Проще говоря, если у меня есть таблица с двумя столбцами (скажем, люди и рост), я могу использовать select max (height) из группы 'table' по людям, и это даст наибольшую высоту для любой группы people_ignoring любых нулей_ .
Если, однако, у меня есть таблица с большим количеством столбцов (height_1, height_2, height_3 и т. Д.), И я хочу просто воспроизвести эту таблицу с новым столбцом, показывающим максимальную высоту (height_1, height_2, height_3, max_height), Я бы интуитивно хотел поставить.
select
height_1,
height_2,
height_3,
max(height_1, height_2, height_3) as max_height
from 'table'
но при таком способе max, похоже, ведет себя по-другому, возвращая ноль, если любой аргументов равен нулю.
Существует ли какая-либо форма использования, которая заставит его вести себя так, как при агрегации столбца, и игнорировать нулевые значения?, Даже при агрегировании отдельных значений в диапазоне столбцов?