Выбор максимального элемента по строке SQL

Есть следующие данные :

Type    Max1    Max2    Max3
A   3   5   NULL
B   57  52  Null
C   7   8   10
D   NULL    NULL    5

Необходимо посчитать максимум из трех столбцов по каждой строке и записать это в столбец Max

То есть на выходе должны получить нечто такое:

Type    Max
A   5
B   57
C   10
D   5

Есть ли какая то функция которая считает максимум в строке ? Или каким иным методом можно это сделать?

Пишется в MS SQL


Ответы (2 шт):

Автор решения: Sanya H
SELECT Type, GREATEST(Max1, Max2, Max3) AS Max From ...
→ Ссылка
Автор решения: Roman Konoval

Можно использовать обычный MAX вместе с Values Table Constructor:

select Type,
   (select max(val) from (values (max1), (max2), (max3)) v(val))
from mytable
→ Ссылка