Откройте для себя сортировку столбца MySQL - PullRequest
35 голосов
/ 01 октября 2011

Ранее я создал таблицу MySQL, и теперь я хочу выяснить, какое сопоставление используются некоторыми полями. Какие команды SQL или MySQL я могу использовать, чтобы обнаружить это?

Ответы [ 3 ]

52 голосов
/ 04 апреля 2012

Вы можете использовать SHOW FULL COLUMNS FROM tablename, который возвращает столбец Сортировка , например, для таблицы «Счета» со специальным сопоставлением для столбца «Имя»

mysql> SHOW FULL COLUMNS FROM accounts;
+----------+--------------+-------------------+------+-----+---------+----------+
| Field    | Type         | Collation         | Null | Key | Default | Extra    |
+----------+--------------+-------------------+------+-----+---------+----------|
| id       | int(11)      | NULL              | NO   | PRI | NULL    | auto_inc |
| name     | varchar(255) | utf8_bin          | YES  |     | NULL    |          |
| email    | varchar(255) | latin1_swedish_ci | YES  |     | NULL    |          |
...

Или вы можете использовать SHOW CREATE TABLE tablename, что приведет к выражению типа

mysql> SHOW CREATE TABLE accounts;
CREATE TABLE `accounts` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
...
10 голосов
/ 02 декабря 2015

Если вы хотите, чтобы сортировка только для этого конкретного столбца (для возможного использования с подзапросом) ...

SELECT COLLATION_NAME
FROM information_schema.columns
WHERE TABLE_SCHEMA = 'tableschemaname'
AND TABLE_NAME = 'tablename'
AND COLUMN_NAME = 'fieldname';
3 голосов
/ 01 октября 2011

SHOW CREATE TABLE tablename покажет вам параметры сортировки каждого столбца, а также параметры сортировки по умолчанию

...