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

comparando duas strings no SQL Server


Não há função de comparação direta de string no SQL Server
CASE
  WHEN str1 = str2 THEN 0
  WHEN str1 < str2 THEN -1
  WHEN str1 > str2 THEN 1
  ELSE NULL --one of the strings is NULL so won't compare (added on edit)
END

Notas
  • você pode encapsular isso por meio de um UDF usando CREATE FUNCTION etc
  • você pode precisar de tratamento NULL (no meu código acima, qualquer NULL reportará 1)
  • str1 e str2 serão nomes de coluna ou @variables