¿SQL MAX de varias columnas?
¿Cómo se devuelve 1 valor por fila del máximo de varias columnas?
Nombre de la tabla
[Number, Date1, Date2, Date3, Cost]
Necesito devolver algo como esto:
[Number, Most_Recent_Date, Cost]
¿Consulta?
Aquí hay otra buena solución para la Max
funcionalidad que usa T-SQL y SQL Server.
SELECT [Other Fields],
(SELECT Max(v)
FROM (VALUES (date1), (date2), (date3),...) AS value(v)) as [MaxDate]
FROM [YourTableName]
Valores es el constructor de valores de tabla .
"Especifica un conjunto de expresiones de valores de fila que se construirán en una tabla. El constructor de valores de tabla de Transact-SQL permite especificar varias filas de datos en una sola instrucción DML. El constructor de valores de tabla se puede especificar como la cláusula VALUES de una INSERT... sentencia VALUES, o como una tabla derivada en la cláusula USING de la sentencia MERGE o en la cláusula FROM".
Si usa SQL Server 2022+ (o MySQL, PostgreSQL, Oracle o BigQuery), puede usar
SELECT GREATEST(col1, col2 ...) FROM table