Updated on 2024-12-06 GMT+08:00

Collation Rules

GaussDB allows you to specify the following collation rules for schemas, tables, or columns.

Differences in collation rules:

  • Currently, only the character string type and some binary types support the specified collation rules. You can check whether the typcollation attribute of a type in the pg_type system catalog is not 0 to determine whether the type supports the collation. The collation can be specified for all types in MySQL. However, collation rules are meaningless except those for character strings and binary types.
  • The current collation rules (except binary) can be specified only when the corresponding character set is the same as the database-level character set. In GaussDB, the character set must be the same as the database character set, and multiple character sets cannot be used together in a table.
  • The default collation of the utf8mb4 character set is utf8mb4_general_ci, which is the same as that in MySQL 5.7.
  • To use the latin1 collation, you need to set the compatibility parameter m_format_dev_version to 's2'.
Table 1 Collation rules

No.

MySQL

GaussDB

1

utf8mb4_general_ci

Supported

2

utf8mb4_unicode_ci

Supported

3

utf8mb4_bin

Supported

4

gbk_chinese_ci

Supported

5

gbk_bin

Supported

6

gb18030_chinese_ci

Supported

7

gb18030_bin

Supported

8

binary

Supported

9

utf8mb4_0900_ai_ci

Supported

10

utf8_general_ci

Supported

11

utf8_bin

Supported

12

utf8_unicode_ci

Supported.

13

latin1_swedish_ci

Supported.

14

latin1_bin

Supported.