Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL比较两个字符串_Sql_Sql Server_Sql Server 2016 Express - Fatal编程技术网

SQL比较两个字符串

SQL比较两个字符串,sql,sql-server,sql-server-2016-express,Sql,Sql Server,Sql Server 2016 Express,我想寻求帮助。我使用这段代码来比较字符串变量。它总是返回true并执行其中的代码。 示例:variable1='Andrew'。。第一次选择应返回“A”,第二次选择“A”。。整个if应该返回False,而应该返回true IF (SELECT SUBSTRING(@variable1,1,1)) = (SELECT LOWER(SUBSTRING(@variable1,1,1))) BEGIN ... END 您的排序规则配置似乎区分大小写,因此请尝试将排序规则应用为C

我想寻求帮助。我使用这段代码来比较字符串变量。它总是返回true并执行其中的代码。
示例:variable1='Andrew'。。第一次选择应返回“A”,第二次选择“A”。。整个if应该返回False,而应该返回true

IF (SELECT SUBSTRING(@variable1,1,1)) = (SELECT LOWER(SUBSTRING(@variable1,1,1)))
    BEGIN
    ...
    END

您的排序规则配置似乎区分大小写,因此请尝试将排序规则应用为
CS
(区分大小写)


用您正在使用的数据库标记您的问题。在许多数据库中,默认比较不区分大小写。
declare @variable1 nvarchar = 'A'
IF (SELECT SUBSTRING(@variable1,1,1)) COLLATE Latin1_General_CS_AS = (SELECT LOWER(SUBSTRING(@variable1,1,1)))
    BEGIN
     print 'ok'
    END