结果数据库名称并使用它们动态查询

时间:2018-02-22 11:28:31

标签: database

我的查询

SET @hastane=4;

由于数据是由系统发送的,因此可以更改,因此我使用变量

SET @mp=(SELECT CONCAT('mediportal',IF(CHAR_LENGTH(@hastane)>1,CONCAT('_',@hastane),CONCAT('_0',@hastane))));

其中传入数据的长度大于1十进制

SET @sorgu1=("SELECT
tt.vt
FROM
(SELECT
IF(t.TABLE_SCHEMA=@mp,@mp,'mediportal') as vt,
IF(t.TABLE_SCHEMA=@mp,1,0) as deger
FROM
information_schema.`TABLES` t
WHERE t.TABLE_SCHEMA like 'mediportal%'
GROUP BY t.TABLE_SCHEMA)tt WHERE tt.deger=1");

在上述操作完成后,我将检查相关数据库是否存在。 @sorgu1结果mydatabase名称

PREPARE deneme from @sorgu1;
EXECUTE deneme;

我的问题;

如何使用@sorgu1

的结果

示例SELECT * FROM @sorgu1.tables_name 或者如何在查询中使用@sorgu1(database name)

0 个答案:

没有答案