Collate只是想要排序(很好).所以这是基于asc结束顺序的本地化偏好(即当前语言的字母和惯例)的排序.
Collate只是想要排序(很好).所以这是基于asc结束顺序的本地化偏好(即当前语言的字母和惯例)的排序.
它指示SQLite适当地对非ASCII字符进行排序.具有变音符号的字符(有些称为重音符号)具有比字符Z更高的字节代码,因此纯ASCII类型不适合许多外语.
例如,大写A char的字节代码是0x41
,而大写字母Z char是0x5A
.然后我们有Á(资本A accute),其中Unicode代码0x00C1
.因此,一个普通的字节代码排序将导致Á在Z之后.
但是在具有这种特征的语言中,惯例是将具有变音符号的语言放在那些就像没有变音符号那样.所以Á应该与平原A一起,至少在B之前.
为了说明,我们在下面列出了使用字节码排序的名称:
布伦达
黛比
乔治
阿尔瓦罗
艾力
现在使用COLLATE LOCALIZED
它将按字符的"基础"排序:
阿尔瓦罗
布伦达
黛比
艾力
乔治
COLLATE是一个SQL运算符,允许您覆盖字符串的默认排序顺序.例如,"COLLATE NOCASE"执行不区分大小写的比较,"COLLATE BINARY"执行区分大小写的比较.
SQLite C接口允许您定义自定义归类(http://www.sqlite.org/c3ref/create_collation.html).