【问题标题】:What is the collation useful for in mysql [duplicate]排序规则对mysql有用[重复]
【发布时间】:2015-10-17 02:50:41
【问题描述】:

与字符集相比,我无法理解排序规则。排序规则的实际用途是什么?

【问题讨论】:

    标签: mysql character-encoding collation


    【解决方案1】:

    我不确定这个问题是否过于宽泛。但让我试一试。

    字符集是我们在屏幕上看到的东西。所以,你可能很清楚字母“a”是什么。而且,你可以接受“A”也是一个字母。

    您可以修改与字体一起显示的字母。所以,aa 仍然是同一个字母,但它们看起来不同。这与排序规则无关,但旨在让您思考这个主题。

    排序规则告诉用户两个字母是否相同。因此,您可以有一个不区分大小写的排序规则,表明“A”和“a”是相同的。或者,它可以区分大小写,表示它们不同。

    这是一个非常基本的例子。当您将字符扩展到其他语言时,问题就会成倍增加。重音字符与非重音字符相同吗?西班牙语中的enyas和n一样吗?以此类推。

    这些是排序规则回答的问题。字符集将位序列转换为可以显示的字符。字体告诉你角色的样子。排序规则允许我们比较两个字符以了解它们是否相同,并了解它们在字典中的顺序。

    【讨论】:

    • 该排序规则能否用于特定字段不区分大小写的搜索?
    • @RalphBrown 。 . .是的,在某种意义上。排序规则是字符串值的属性。它可以为列、数据库或服务器定义(因此如果没有明确给出,它会继承该值)。如果你使用 `COLLATE`,那么你可以指定它。但是,排序规则需要与比较中涉及的两个字符串兼容。 (也就是说,它是字符串的属性,而不是比较。)
    猜你喜欢
    • 2011-11-14
    • 2012-01-19
    • 1970-01-01
    • 2018-12-19
    • 1970-01-01
    • 2011-10-22
    • 2010-11-27
    • 2011-08-18
    • 2010-11-29
    相关资源
    最近更新 更多