Здравствуйте, BlackEric, Вы писали:
BE>Добавлены новые функции GREATEST и LEAST, выбирающие наибольшее и наименьшее значение из переданного списка. Например:
BE>BE>SELECT greatest(1, 2, 3); --> 3
BE> SELECT least(1, 2, 3); --> 1
BE> SELECT least(standard, discount) FROM data ...
BE>
BE>Собственно вопрос: в чем смысл функций GREATEST и LEAST. Они же практически дублируют MAX() и MIN()?
MAX и MIN работают по строкам, а GREATEST и LEAST — по столбцам.
Понятно, что можно перевести одно в другое, но это зачастую сильно усложнеяет и замедляет запрос.
Заменой GREATEST и LEAST мог бы служить CASE, но при большом количестве аргументов он будет ну очень громоздким.