在MySQL,PHP中进行sorting时字符的优先级是什么?

问题:在MySQL,PHP中进行sorting时,在哪里可以find字符的优先级,或者只是在Linux和Windows操作系统上进行sorting?

例如 ,每个人都知道在MySQL中对string进行升序sorting时,会出现b 。 但是其他人物呢? 美元符号$是星号*之前吗? 感叹号前面是否有空格? 等等…

什么决定sorting顺序? 它使用底层的ASCII / UTF-8值吗? 不同的技术有什么不同?

要考虑的技术:

  1. 数据库 – MySQL / SQL / SQLite / Oracle /等
  2. 编程语言(用于stringsorting函数) – PHP / Javascript / ASP.NET / Visual C#/ Python / Ruby / Objective C
  3. 操作系统(即按文件名sorting文件) – Windows / Linux / MacOS / iOS / Android

  1. 数据库 – 排序规则,如果没有排序规则设置整数字符值
  2. 编程语言 – 区域设置或整数字符值或用户定义的功能(通常所有3个选项默认都可用)
  3. 操作系统 – 区域设置

字符表示为从无符号整数类型到特定字形的映射。 特定映射是由字符集定义的。

因此,当你比较字符时,你真的比较了代表特定字符集中字符的整数。

例如,Java根据它们的Unicode代表比较String 。 资源

在数据库方面,这被称为排序顺序,大多数字符集都有一个默认值。 如果你使用unicode,你可以看看这里: http : //www.unicode.org/reports/tr10/tr10-24.html

考虑其他语言时,它会变得更有趣。

Ä和ö是荷兰语和德语的重音字母,但是瑞典字母表中的“真实”字母(在Z之后,不在A和B / O和L之间)。