为什么下面的查询返回一行:SQL LIKE查询返回行
select * from (
select 'th' As Test1) as Test
where Test1 like '%þ%'
我使用下列归类:Latin1_General_CI_AS
þ
被评估为LIKE th
。
为什么下面的查询返回一行:SQL LIKE查询返回行
select * from (
select 'th' As Test1) as Test
where Test1 like '%þ%'
我使用下列归类:Latin1_General_CI_AS
þ
被评估为LIKE th
。
所有的问题都通过this link在维基百科回答。 Thorn信函和有向图th
在您使用的排序规则中被认为是相同的。它与希腊theta字符θ
相似。
谢谢,我使用的排序规则是:Latin1_General_CI_AS。以下网页告诉我代码页是1252:http://msdn.microsoft.com/en-gb/library/ms186356(v=sql.100).aspx。以下是维基百科的代码页文档:http://en.wikipedia.org/wiki/Windows-1252。 T,H和Thorn是不同的角色? – w0051977
@ w0051977,在冰岛,t,h和þ被认为是不同的字母(见http://en.wikipedia.org/wiki/Icelandic_language) - 我所说的是,在这里遵循的整理强制规则是治疗_sequence_“th”和“þ”等同。由于您使用的排序规则是不区分大小写,区分重音的,因此可能是CI位执行此操作。 – paxdiablo
我认为这是整理。 [DEMO](http://sqlfiddle.com/#!3/d41d8/8561)没有排序规则的第二个查询将返回没有结果结果 – Kaf