有什么方法可以比较 SQL Server 2008 存储过程中的两个字符串,如下所示?
int returnval = STRCMP(str1, str2)
以上方法我在 MySQL 中找到,但在 SQL Server 中没有。
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
END
备注:
CREATE FUNCTION
等通过 UDF 包装它。str1
和 str2
将是列名称或 @variables我用这个:
选择 IIF(str1 = str2, 0, -1)