小编Raj*_*nan的帖子

在区分大小写的SQL Server数据库中执行不区分大小写的Like查询

这是我的情景.

SQL Server 2014标准版,我有一个具有SQL_Latin1_General_CP437_BIN2区分大小写的排序规则的数据库.

我想执行一个LIKE查询,它应该返回输出而不管区分大小写.

例如:如果我执行Like查询以使用userName'John'获取记录,它也应该返回行,而不管区分大小写"JOHN","John","john","joHN".

我尝试使用Lcase,Ucase但是我收到了错误

Msg 195,Level 15,State 10,Line
4'LCASE'不是公认的内置函数名.

这是我的示例查询

SELECT TOP 300 * 
FROM
    (SELECT 
         userNo, userName, Place, Birthdate
     FROM usertable 
     WHERE personid = 2 
       AND (Name LIKE LCASE('%john%')) 

     UNION 

     SELECT 
         userNo, userName, Place, Birthdate, 
     FROM usertable2 
     WHERE personid = 2 
       AND (Name LIKE LCASE( '%john%') OR Place LIKE LCASE('%NY%')) ) a 
ORDER BY 
    userNo
Run Code Online (Sandbox Code Playgroud)

伙计们帮助我提出宝贵的建议,我对使用基于校对的数据库感到困惑.

sql-server collation case-insensitive sql-like sql-server-2014

5
推荐指数
1
解决办法
8984
查看次数