# `COLLATE` Clause

__*COLLATE Clause*__

```
tidb> SELECT * FROM test.c1 ORDER BY NAME;
+------+
| name |
+------+
| A    |
| B    |
| C    |
| a    |
| b    |
| c    |
+------+
6 rows in set (0.00 sec)
```
```
tidb> SELECT * FROM test.c1 ORDER BY NAME ~!@COLLATE UTF8MB4_GENERAL_CI@!~;
+------+
| name |
+------+
| A    |
| a    |
| B    |
| b    |
| C    |
| c    |
+------+
6 rows in set (0.01 sec)
```

------------------------------------------------------------------------------
For example, observe the difference results caused by the `COLLCATE` clause.

```
tidb> SET NAMES UTF8MB4 COLLATE UTF8MB4_BIN;
Query OK, 0 rows affected (0.00 sec)

tidb> SELECT 'A' = 'a';
+-----------+
| 'A' = 'a' |
+-----------+
|         0 |
+-----------+
1 row in set (0.00 sec)

tidb> SET NAMES UTF8MB4 COLLATE UTF8MB4_GENERAL_CI;
Query OK, 0 rows affected (0.00 sec)

tidb> SELECT 'A' = 'a';
+-----------+
| 'A' = 'a' |
+-----------+
|         1 |
+-----------+
1 row in set (0.01 sec)
```
