gpt4 book ai didi

当我使用 LIKE 运算符时,SQL-Server 会忽略我的 COLLATION

转载 作者:行者123 更新时间:2023-12-03 01:13:42 25 4
gpt4 key购买 nike

我正在使用西类牙语数据库,因此当我查找“aeiou”时,我还可以在这样的 where 子句中获得“áéíóú”或“AEIOU”或“ÁÉÍÓÚ”:

SELECT * FROM myTable WHERE stringData like '%perez%'

我期望:

* perez
* PEREZ
* Pérez
* PÉREZ

所以我将数据库更改为排序规则:Modern_Spanish_CI_AI

我只得到:

* perez
* PEREZ

但如果我这样做:

SELECT * FROM myTable WHERE stringData like '%perez%' COLLATE Modern_Spanish_CI_AI 

我得到的所有结果都正常,所以我的问题是,为什么如果我的数据库是 COLLATE Modern_Spanish_CI_AI 我必须为我的查询设置相同的排序规则???

我使用的是 SQL-Server 2008

最佳答案

您可以使用COLLATE,例如。

SELECT * 
FROM TableName
WHERE strData COLLATE Latin1_general_CI_AI = 'perez' COLLATE Latin1_general_CI_AI

双方必须具有相同的排序规则。

其他:

关于当我使用 LIKE 运算符时,SQL-Server 会忽略我的 COLLATION,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16660346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com