SQL-在searchstring时忽略大小写
我有一个表中的以下数据
PriceOrderShipped
PriceOrderShippedInbound
PriceOrderShippedOutbound
在SQL中,我需要编写一个查询来search表中的string。 searchstring时应该忽略大小写。 对于下面提到的SQL查询
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%'
给出所有上述数据,而
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%'
不给。
例如。 当我search'PriceOrder'或'priceOrder'它的作品,但'priceorder'或'Priceorder'不起作用。 我已经尝试使用COLLATE下面的查询,但它不工作。 请让我知道我哪里错了。
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'
使用这样的东西 –
SELECT DISTINCT COL_NAME FROM myTable WHERE UPPER(COL_NAME) LIKE UPPER('%PriceOrder%')
要么
SELECT DISTINCT COL_NAME FROM myTable WHERE LOWER(COL_NAME) LIKE LOWER('%PriceOrder%')
看到这个类似的问题,并回答search不区分大小写 – SQL服务器忽略大小写expression式中的情况
尝试使用类似于:
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME COLLATE SQL_Latin1_General_CP1_CI_AS LIKE '%priceorder%'
您应该使用SQL_Latin1_General_Cp1_CI_AS_KI_WI
作为整理。 你在你的问题中指定的是明确区分大小写的。
你可以在这里看到一个sorting列表。