MySQLデータベースにクエリを実行して、テーブルの列名をアルファベット順に取得することはできますか?そんなこと知ってる
SHOW COLUMNS `table_name`;
または
DESCRIBE `table_name`;
テーブル内の列のリスト(および他の情報)が表示されますが、列をアルファベット順に並べ替えるためにクエリを変更することは可能です。 ORDER BY 'フィールド'の追加が機能せず、構文エラーが発生しました。
ANSI INFORMATION_SCHEMAテーブル(この場合はINFORMATION_SCHEMA.COLUMNS) MySQLの柔軟性が向上します。
SELECT c.column_name
FROM INFORMATION_SCHEMA.COLUMNS c
WHERE c.table_name = 'tbl_name'
-- AND c.table_schema = 'db_name'
ORDER BY c.column_name
詳細が必要な場合は、以下のクエリが非常に便利です。
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 = 'my table' and
TABLE_SCHEMA = 'my database'
add ordering
order by Type; --
group by column name
を使用するまで、すべてのフィールドが2回リストされていました。
select c.COLUMN_NAME from INFORMATION_SCHEMA.COLUMNS c
where c.TABLE_NAME = `'tbl_name'`
group by c.column_name
order by c.column_name