INFORMATION_SCHEMA.TABLES
でTABLE_SCHEMA
を絞ってSELECT
して取得する:
SELECT
DISTINCT(`TABLE_NAME`) as `table`
FROM
`INFORMATION_SCHEMA`.`TABLES`
WHERE
`TABLE_SCHEMA` = 'tablename';
例えば日付でシャーディングしているlogs
テーブルを抽出する際、LIKE
を使えば簡単に抽出できる:
SELECT
DISTINCT(`TABLE_NAME`) as `table`
FROM
`INFORMATION_SCHEMA`.`TABLES`
WHERE
`TABLE_SCHEMA` = 'logs'
AND
`TABLE_NAME` LIKE 'log_%';