2017-05-30 86 views
0

我有一些的GTT填充有數據,稍後用於WHERE子句(WHERE x in (SELECT * FROM gtt))。但是有時我沒有臨時表的數據或者不想過濾它。空甲骨文全局臨時表的where子句

如果我理解正確的話,當我插入的東西,在那裏爲會議的GTT被實例化。有沒有辦法實例化一個空表,所以當我使用WHERE IN SELECT時它不會拋出錯誤(它現在會這樣做)? 還是我必須建立與國際單項體育聯合會的SELECT語句來選擇只包括應使用的這些GTT一個WHERE?

目前的結構是這樣的:

IF(data) 
INSERT INTO GTT1 SELECT ... 
END IF; 

(數的GTT)

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

什麼錯誤? – Nitish

+0

而不是你應該使用WHERE。 SELECT x.data,x.more,AA,AB x表格,表2一 WHERE x.key在(SELECT * FROM gtt1 WHERE XA = AA; –

+0

顯然已編輯你的代碼刪除敏感信息很公平。但是,您必須小心保留足夠的信息,以便我們瞭解正在發生的事情。例如,現在您的示例SELECT不會編譯。 – APC

回答

0

你可以改變,沒有行找到了你INSERT INTO GTT這樣的WHERE子句。