我有一些填充了数据的GTT,后来用于WHERE子句(WHERE x in (SELECT * FROM gtt))
。但是,有时候我没有临时桌子的数据或者不想通过它进行过滤。
如果我理解正确的话,GTT会在插入内容时进行实例化,并且会在那里进行。有没有办法实例化一个空表,所以当我使用WHERE IN SELECT时它不会抛出错误(它现在会这样做)? 或者我是否必须使用IF创建SELECT语句,以便有选择地仅包含应该使用的gtts的WHERE?
目前结构如下:
IF(data)
INSERT INTO GTT1 SELECT ...
END IF;
(对于几个gt)
SELECT x.data, x.more, a.a, a.b
FROM table1 x, table2 a
WHERE x.key in (SELECT * From gtt1) AND x.a = a.a;
答案 0 :(得分:0)
您可以更改INSERT INTO GTT
的WHERE子句,以便找不到任何行。