Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Funzione in SQL Server 2008 simile a GREATEST in mysql?

Non in SQL Server 2008 ma queste funzioni sono/saranno finalmente disponibili in SQL Server (presumibilmente SQL Server 2022)

le funzioni GREATEST e LEAST T-SQL sono ora generalmente disponibili nel database SQL di Azure, nonché in Azure Synapse Analytics (solo pool serverlessSQL) e Istanza gestita SQL di Azure.

Le funzioni saranno disponibili anche nelle prossime versioni di SQLServer.

Per le versioni precedenti puoi utilizzare il fatto che una sottoquery può accedere alle colonne dalla query esterna in modo da poter aggiungere una sottoquery Selezionando il max da un'unione di quelli.

SELECT *, 
      (SELECT MAX(c) FROM (VALUES(number),(status)) T (c)) AS Greatest
FROM master..spt_values

O per SQL Server 2000/2005

SELECT *, 
      (SELECT MAX(c) FROM 
                    (SELECT number AS c 
                     UNION ALL 
                     SELECT status) T) AS GreatestNumberOrStatus
FROM master..spt_values