У меня есть эта таблица:Выберите сумму столбца с более высоким значением в строке досягаемости
a b
-----
1 3
4 3
2 1
От того, где я хотел бы выбрать сумму из каких бы значения выше, между а и б.
Я пробовал со следующим запросом, но SUM()
не признает ценность, которую я хочу, чтобы он суммировал.
SELECT IF(a > b, a, b) AS number, SUM(number) FROM table;
В обработке логических запросов SELECT происходит все вместе одновременно, поэтому он не распознает псевдоним, который вы указываете в своем SELECT. Поэтому просто используйте свое условие, а не используйте псевдоним. – sqluser
Спасибо, 'SELECT SUM (IF (a> b, a, b))', что в основном является синонимом ответа, также отлично работает – cedivad