テーブルtbl1は、カラムがのtbl_namesです。この列には、他のテーブルの名前が含まれています。
は今、私は次の形式でクエリを書きたい:
select * from (select tbl_names from tbl1)
FOR
私は上記のクエリが動作しないことを知っているが、私はこれを達成することができますか?ストアドプロシージャなどを記述し、2番目のクエリの各値にループして最初のクエリを実行する必要がありますか?あなたが準備された文
SET @a = (select tbl_names from tbl1);
SET @x := CONCAT('SELECT * FROM ', @a);
Prepare stmt FROM @x;
Execute stmt;
DEALLOCATE PREPARE stmt;
乾杯を使用することができます
おかげ
ストアドプロシージャは、迅速な応答をあなたに –
おかげアルンを助けることができる:あなたが実行してから
exec(@sql)
全例を呼び出したいクエリとSQL文字列を構築します。しかし、私はストアドプロシージャに慣れていないと申し訳ありませんので、これで私を助けてください:) –