Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Função no SQL Server 2008 semelhante ao GREATEST no mysql?


Não no SQL Server 2008, mas essas funções estão/estarão disponíveis finalmente no SQL Server (presumivelmente SQL Server 2022)

as funções GREATEST e LAST T-SQL agora estão geralmente disponíveis no Banco de Dados SQL do Azure, bem como no Azure Synapse Analytics (somente pools serverlessSQL) e na Instância Gerenciada de SQL do Azure.

As funções também estarão disponíveis nas próximas versões do SQLServer.

Para versões anteriores você pode usar o fato de que uma subconsulta pode acessar as colunas da consulta externa para que você possa adicionar uma subconsulta Selecionando o max de uma união desses.
SELECT *, 
      (SELECT MAX(c) FROM (VALUES(number),(status)) T (c)) AS Greatest
FROM master..spt_values

Ou para SQL Server 2000/2005
SELECT *, 
      (SELECT MAX(c) FROM 
                    (SELECT number AS c 
                     UNION ALL 
                     SELECT status) T) AS GreatestNumberOrStatus
FROM master..spt_values