いくつかの異なる種類の調査を含むデータベースがあります。各調査には、データベース内に独自のテーブルがあります。一部の調査は同じ構造を持っています。これらは同じ数の列を持っています。テーブル名の内容と列数に基づいて調査のサブセットを選択したいと考えています。
必要な調査には 2 つの異なる名前を付けることができ、すべての名前に数字が含まれています。
SELECT table_name FROM information_schema.TABLES
WHERE ((TABLE_NAME like '%ls_survey_%') or (TABLE_NAME like '%ls_old_survey_%'))
and TABLE_NAME rlike '[0123456789]'
ここまでは順調ですね。次のようにして、テーブルの列数を取得できることを知っています。
SELECT count(*) FROM information_schema.COLUMNS WHERE table_name = 'tableName'
上記の 2 つの式を組み合わせて、最初の式を満たし、指定された数の列のみを持つテーブルのみを取得する方法について、私は困惑しています。