巨大なデータベースと、テーブルに存在するかどうかわからない列名があります。その存在を確認するにはどうすればよいですか?
5175 次
5 に答える
3
SELECT * FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'db_name'
AND COLUMN_NAME = 'column_name'
于 2013-06-26T13:17:55.760 に答える
2
すべてのテーブルを確認する必要がある場合は、最初にテーブルを一覧表示する必要がある場合があります。
SHOW TABLES FROM database_name;
次に、テーブルを (PHP などのコードで) ループし、次のクエリを実行します。
SHOW COLUMNS FROM database_name.table_name LIKE 'mycol';
列がテーブルに存在する場合、これは結果を返します。
information_schema から直接選択することもできますが、MySQL や大規模なデータベースでは、場合によっては非常に遅くなることがわかりました。
于 2013-06-26T13:17:58.270 に答える
0
SELECT * FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME ='table_name' AND COLUMN_NAME = 'col_name'
于 2013-06-26T13:19:28.383 に答える