mysql字符串排序规则
    MySQL 根据比较操作符会按照一定的规则进行排序,排序的顺序依赖于当前数据库语言和字符集,中文使用的是 GBK 字符集, GBK 字符集是一种汉字拼音的表示,根据这个表示形式给 GBK 字符集设定了比较操作符,这样可以根据这些操作符在字符序列中排序。
    MySQL 使用三种不同的排序规则来排序中文字符串:
    1. BINARY
mysql 字符串转数组    BINARY 排序规则基于字节序,所以它会把字符串视为二进制形式大小小写不敏感,以及按照小端顺序比较字节,也就是说以第一个字节为主要关注,第N个字节作为辅助关注。
    2. GBK
    GBK 排序规则依赖于汉语拼音表示的 GBK 字符集,根据 GBK 字符集规则,并且使用拼音正序,比较每一个字符的拼音。
    3. UTF-8
    UTF-8 排序规则是 UTF-8 编码集的编码规则,把字符串视为 UTF-8 编码格式进行比较,是 Unicode 编码集的一种。
    MySQL 会根据不同的情况,根据不同的排序规则进行排序,若是没有 LOWER/UPPER 或 CONVERT/CAST 操作符的话,MySQL 会使用比较运算符操作。像 =, >, > =, <, <= 等操作都使用 BINARY 排序方式比较,而 ORDER BY 子句操作,MySQL 默认情况下是使用 UTF-8 排序规则排序的,可以使用 COLLATE关键字来修改,比如 ORDER BY 子句可以使用 COLLATE gbk_chinese_ci 来进行指定 GBK 排序规则,也可以指定 BINARY 之类的规则。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。