pax*_*blo 56
整理可以简单地视为排序顺序.
在英语中(并且它是奇怪的堂兄,美国人),整理可能是一个非常简单的问题,包括ASCII码的排序.
一旦你进入那些奇怪的欧洲语言及其所有的口音和其他功能,整理就会发生变化.例如,虽然不同的重音形式a
可能存在于不同的代码点,但它们可能都需要按照它们是相同的字母进行排序.
Joe*_*eda 42
除了在某些西欧语言中"重音字母的排序方式与非重音字母不同"之外,您还必须考虑字母组,有时这些字母的排序也不同.
传统上,在西班牙语中,"ch"本身被认为是一个字母,与"ll"(两者都代表单个音素)相同,因此列表将按如下方式排序:
请注意,所有的字开头的单Ç一起去,除了开始的话CH哪去了后他们同样与LL后开始与一个单一的所有的话里面去-starting词升.这是您在旧词典和百科全书中看到的顺序,有时甚至是非常保守的组织.
皇家语言学院改变了这一点,使西班牙语更容易适应计算机世界.尽管如此,ñ仍然被认为是比一个不同的字母ñ,去后,它和之前Ø.所以这是一个正确排序的列表:
通过选择正确的排序规则,您可以自动完成所有这些操作:-)
Qua*_*noi 13
告诉如何比较和排序字符串的规则:字母顺序; 案件是否重要,变音符号是否重要等
例如,如果您希望所有字母都不同(例如,如果您将文件名存储在其中UNIX
),则使用UTF8_BIN
排序规则:
SELECT 'A' COLLATE UTF8_BIN = 'a' COLLATE UTF8_BIN
---
0
Run Code Online (Sandbox Code Playgroud)
如果您想忽略大小写和变音符号差异(例如,对于搜索引擎),则使用UTF8_GENERAL_CI
排序规则:
SELECT 'A' COLLATE UTF8_GENERAL_CI = 'ä' COLLATE UTF8_GENERAL_CI
---
1
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,这种排序规则(比较规则)会考虑大写A
和低位ä
相同的字母,忽略大小写和变音符号差异.
gbn*_*gbn 10
排序规则定义了如何对字符串值进行排序和比较
例如,它定义了如何处理
äàa
等)Aa
)cote < côte < coté < côté.
cote < coté < côte < côté
整理是指为字母中的字符分配某种顺序,例如ASCII或Unicode等。
假设您的字母中有3个字符-{A,B,C}。您可以通过为字符分配整数值来为其定义一些示例排序规则
实际上,您可以定义n!大小为n的字母上的排序规则。给定这样的顺序,像LSD / MSD字符串排序之类的不同排序例程会利用它来对字符串进行排序。