# キャラクターセットと照合順序

__*character set*__
__*collation*__

+ `SHOW CHARACTER SET`：サポートされている文字セットの一覧を表示するには
+ `SHOW COLLATION`: サポートされている照合順序のリストを表示するには
+ このたとえは例えであります
  + `CREATE DATABASE universe DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin`
```
tidb> SHOW COLLATION;
+--------------------+---------+------+---------+----------+---------+
| Collation          | Charset | Id   | Default | Compiled | Sortlen |
+--------------------+---------+------+---------+----------+---------+
| ascii_bin          | ascii   |   65 | Yes     | Yes      |       1 |
| binary             | binary  |   63 | Yes     | Yes      |       1 |
| gbk_bin            | gbk     |   87 |         | Yes      |       1 |
| gbk_chinese_ci     | gbk     |   28 | Yes     | Yes      |       1 |
| latin1_bin         | latin1  |   47 | Yes     | Yes      |       1 |
| utf8_bin           | utf8    |   83 | Yes     | Yes      |       1 |
| utf8_general_ci    | utf8    |   33 |         | Yes      |       1 |
| utf8_unicode_ci    | utf8    |  192 |         | Yes      |       1 |
| utf8mb4_bin        | ~!@utf8mb4@!~ |   46 | Yes     | Yes      |       1 |
| utf8mb4_general_ci | utf8mb4 |   45 |         | Yes      |       1 |
| utf8mb4_unicode_ci | utf8mb4 |  224 |         | Yes      |       1 |
+--------------------+---------+------+---------+----------+---------+
11 rows in set (0.00 sec)
```

------------------------------------------------------------

文字セット」とは、シンボルとエンコードの集合のことです。TiDBのデフォルトの文字セットはutf8mb4であり、MySQL 8.0以降のデフォルト文字セットと一致しています。

コレーション」とは、文字集合内の文字を比較し、文字のソート順を定義するルールです。
