2015-10-12 31 views
0

我在那裏我得到了同樣的查詢兩種不同結果的情況cloumn的唯一區別是地方列的選擇部分(第1和第2逆轉,以2號和1號)改變的地方產生不同的結果爲相同的查詢

select a11.GN_ID,a11.GN_NM 
FROM TABLE1 a10, TABLE2 a11 
where a10.GN_ID=a11.GN_ID; 

THIS ABOVE SQL查詢RESULTING 600個紀錄

select a11.GN_NM,a11.GN_ID 
FROM TABLE1 a10, TABLE2 a11 
where a10.GN_ID=a11.GN_ID; 

THIS ABOVE SQL查詢RESULTING 0記錄。

+1

你應該學會使用適當的'join'語法。 –

+0

@ Gordon,這是一個示例查詢,我們已經從BI工具中提取了這個示例,順便提一下,您正在引用的語法是什麼。您能否提供更多見解? – user3085928

+0

好的,我不想懷疑你,但這絕對不是唯一的區別。 –

回答

0

無論何時您不明白您認爲應該提供相同輸出的兩個查詢之間的差異,最好的第一步是檢查執行計劃。

你可以通過運行SHOW PLANFILE來做到這一點;運行您的查詢後立即。

例如:

select a11.GN_ID,a11.GN_NM 
FROM TABLE1 a10, TABLE2 a11 
where a10.GN_ID=a11.GN_ID; 

SHOW PLANFILE; 

select a11.GN_NM,a11.GN_ID 
FROM TABLE1 a10, TABLE2 a11 
where a10.GN_ID=a11.GN_ID; 

SHOW PLANFILE: 

的planfile輸出添加到你的問題,所以我們可以幫助評估這一點。

相關問題