mysqlのテーブルに列名/フィールド名が存在する場合にデータベースを検索する方法はありますか?
質問する
27370 次
4 に答える
21
INFORMATION_SCHEMAデータベースとそのテーブルを使用します。
例:
SELECT *
FROM information_schema.columns
WHERE table_schema = 'MY_DATABASE'
AND column_name IN ( 'MY_COLUMN_NAME' );
于 2012-04-11T06:38:21.330 に答える
6
データベース全体を検索したい場合は、試してみてください
SELECT *
FROM information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'db_name'
AND COLUMN_NAME = 'column_name'
また、特定のテーブルを検索する場合は、試してみてください。
SELECT *
FROM information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'db_name'
AND TABLE_NAME = 'table_name'
AND COLUMN_NAME = 'column_name'
于 2012-04-11T06:48:22.133 に答える
6
SHOW COLUMNS FROM tablename LIKE 'columnname'
楽しんで !:-)
アップデート:
コメントで述べたように、これはデータベース全体(すべてのテーブル)ではなく、1つのテーブルのみを検索します。その場合は、DhruvPathakの回答を参照してください。
于 2012-04-11T06:40:32.807 に答える
1
2つ以上の列を検索する場合は、以下の項目を使用してください。
SELECT DISTINCT TABLE_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME IN ('columnA','ColumnB')
AND TABLE_SCHEMA='YourDatabase';
于 2015-01-09T12:20:20.927 に答える