Обратный порядок MySQL SHOW COLUMNS
Мне нужно найти столбцы в конкретной таблице, что не проблема:
SHOW COLUMNS FROM tablename LIKE '%ColumnPrefix%';
Но мне нужно знать, в каком порядке они будут возвращены, желательно, выбрав порядок для упорядочивания результатов по алфавиту. Мне не повезло с использованием ORDER BY
.
Любые идеи?
Ответы
Ответ 1
Вы можете запросить таблицу INFORMATION_SCHEMA.COLUMNS
, чтобы получить информацию, которую предоставляет SHOW COLUMNS
, плюс она позволяет использовать ORDER BY или любой другой синтаксис SQL, который вы, возможно, захотите использовать:
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tablename'
AND column_name LIKE 'ColumnPrefix%'
ORDER BY column_name
Ответ 2
Поскольку у меня была та же самая проблема, я завершу ответ Марка.
Вот точная длинная версия запроса "show columns from table":
SELECT
`column_name` AS `Field`,
`column_type` AS `Type`,
`is_nullable` AS `Null`,
`column_key` AS `Key`,
`column_default` AS `Default`,
`extra` AS `Extra`
FROM
`information_schema`.`columns`
WHERE
`table_name`='mytable';
С помощью этого запроса вы можете заказать результат, но хотите, добавив ORDER BY.