排序规则(即 COLLATE 运算符)用于指定字符序,可以用于重新设定字符类型的字符序或为单个表达式指定字符序。

COLLATE 是后缀一元运算符,与其它一元运算符优先级相同,但是在所有前缀一元运算符之后执行。COLLATE 运算符可以应用于 VARCHAR2,CHAR,LONG,NVARCHAR 或 NCHAR 类型的表达式。

COLLATE 运算符后跟一个参数 collation_name,表示需要设置或使用的字符序,字符序名称包含空格时必须在名称外加双引号。

举例如下:

obclient> create table t1(c1 varchar(20));
obclient> insert into t1 values('a');
obclient> insert into t1 values('b');
obclient> insert into t1 values(1);
obclient> select * from t1 order by c1 collate utf8mb4_general_ci;
+------+
| C1   |
+------+
| 1    |
| a    |
| b    |
+------+
3 rows in set (0.00 sec)

目前支持如下排序规则:

obclient> show collation;
+--------------------+---------+-----+---------+----------+---------+
| COLLATION          | CHARSET | ID  | DEFAULT | COMPILED | SORTLEN |
+--------------------+---------+-----+---------+----------+---------+
| utf8mb4_general_ci | utf8mb4 |  45 | Yes     | Yes      |       1 |
| utf8mb4_bin        | utf8mb4 |  46 | NULL    | Yes      |       1 |
| binary             | binary  |  63 | Yes     | Yes      |       1 |
| gbk_chinese_ci     | gbk     |  28 | Yes     | Yes      |       1 |
| gbk_bin            | gbk     |  87 | NULL    | Yes      |       1 |
| utf16_general_ci   | utf16   |  54 | Yes     | Yes      |       1 |
| utf16_bin          | utf16   |  55 | NULL    | Yes      |       1 |
| utf8mb4_unicode_ci | utf8mb4 | 224 | NULL    | Yes      |       1 |
| utf16_unicode_ci   | utf16   | 101 | NULL    | Yes      |       1 |
| gb18030_chinese_ci | gb18030 | 248 | Yes     | Yes      |       1 |
| gb18030_bin        | gb18030 | 249 | NULL    | Yes      |       1 |
+--------------------+---------+-----+---------+----------+---------+
11 rows in set (0.01 sec)

admin

这个人很懒,什么都没有留下~

Share
Published by
admin

Recent Posts

vue:页面注入js修改input值

一般会直接这样写: let z…

2 分钟 ago

聊聊vue3中的defineProps

在Vue 3中,defineP…

1 周 ago

在 Chrome 中删除、允许和管理 Cookie

您可以选择删除现有 Cooki…

2 周 ago

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 周 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

4 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

1 月 ago