排序规则对mysql有用[重复]

Posted

技术标签:

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

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

【问题讨论】:

【参考方案1】:

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

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

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

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

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

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

【讨论】:

该排序规则能否用于特定字段不区分大小写的搜索? @RalphBrown 。 . .是的,在某种意义上。排序规则是字符串值的属性。它可以为列、数据库或服务器定义(因此如果没有明确给出,它会继承该值)。如果你使用 `COLLATE`,那么你可以指定它。但是,排序规则需要与比较中涉及的两个字符串兼容。 (也就是说,它是字符串的属性,而不是比较。)

以上是关于排序规则对mysql有用[重复]的主要内容,如果未能解决你的问题,请参考以下文章

出现问题:MySQL中的排序规则的非法混合[重复]

如何找出我的 MySQL 中的默认字符集/排序规则 [重复]

如何在不转换列的情况下更改 MySQL 中的表(默认)排序规则[重复]

Mysql 表排序规则改变

Mysql 排序规则选择

请你说说MySQL的字符集与排序规则对开发有哪些影响?