Как добавить значения в запрос выбора? Например, в моем коде ниже у меня 5 золотых, 2 серебра и 1 бронза. 1 золото равно 3 пунктам, а 1 серебро - 2 балла. Мой вопрос в том, как я могу вычислить для этого в запросе select? Является ли это возможным?Добавить значения в select query в php
Вот мой скрипт
$sql = "SELECT team.shortcut,
SUM(IF(rank = 1, 1, 0)) AS gold,
SUM(IF(rank = 2, 1, 0)) AS silver,
SUM(IF(rank = 3, 1, 0)) AS bronze
FROM team
INNER JOIN academicorg ON team.shortcut = academicorg.shortcut
GROUP BY shortcut
ORDER BY gold DESC, silver DESC, bronze DESC";
$con = mysqli_connect($server_name,$mysql_user,$mysql_pass,$db_name);
$result = mysqli_query($con,$sql);
$response = array();
while($row=mysqli_fetch_array($result))
{
array_push($response, array("shortcut"=>$row[0], "gold"=>$row[1], "silver"=>$row[2], "bronze"=>$row[3], "total"=>$row[4]));
}
echo json_encode (array("news_response"=>$response));
mysqli_close($con);
?>
Вот что я получаю
{"news_response":[{"shortcut":"aaa","gold":"6","silver":"3","bronze":"5","total":null},
{"shortcut":"bbb","gold":"6","silver":"3","bronze":"4","total":null}
Вот что я хочу. Я получил в общей сложности 29, потому что золото равно 3 балла и серебро 2 и бронза 1.
{"news_response":[{"shortcut":"aaa","gold":"6","silver":"3","bronze":"5","total"29},
{"shortcut":"bbb","gold":"6","silver":"3","bronze":"4","total":28}
Не понимаю. Что ты хочешь делать? – malutki5200
Я думаю, вам придется обернуть выбор внутри другого выбора. Возможно, было бы проще просто выполнить математику внутри цикла while. – aynber
Показать ваши данные и показать желаемые результаты – RiggsFolly