【问题标题】:SQL query that distinguishes between ß and ss区分 ß 和 ss 的 SQL 查询
【发布时间】:2010-10-20 20:11:39
【问题描述】:

SQL 中似乎是ß=ss。我需要能够在严格的等效字符基础上进行区分。

SELECT * from table WHERE name LIKE '%ß%'

产量

Brian Bruß Steven Sossmix

等等。

我查看了不同的排序规则,看看是否有一个忽略字符扩展,但到目前为止还没有运气。

数据库默认使用Latin1_General_CI_AS - 我也尝试过Latin1_General_CS_ASLatin1_General_CS_AS_WS,但都不起作用。

任何帮助将不胜感激。

【问题讨论】:

  • 您使用的是哪个数据库服务器? SQL Server、Oracle、MySQL 还是...?
  • 本地化设置是什么 - 默认情况下哪些代码集和排序规则有效。
  • 当我在 ss 前加上 N 时,我会得到你的结果。 -> N'ss' 否则它会按预期工作(对我来说)。
  • @jms-it 处理cultureInfo 设置的内容
  • 伟大的边缘案例,感谢发布。 :)

标签: sql sql-server-2008 collation


【解决方案1】:

找到了一个thread,它有两个解决方案。

【讨论】:

  • 一个答案来自 Jon Skeet,所以也许他可以介入并详细说明
【解决方案2】:

您需要使用二进制排序规则,以便区分大小写、区分重音等。

整理:SQL_Latin1_General_Cp437_BIN

【讨论】:

    猜你喜欢
    • 2015-01-22
    • 2012-05-08
    • 1970-01-01
    • 2017-10-31
    • 2023-03-27
    • 2019-04-04
    • 2018-08-18
    • 1970-01-01
    相关资源
    最近更新 更多