plsql利用左鏈接完成三張表的數據合並


SQL語句,寫了不少,但一直用的是等於,對於三張表,這邊有數據,那邊沒有,

就會比較麻煩,數據就不全。最開始用窮舉解決,很麻煩,現在用左鏈接省了很多事。

再用存儲過程,以前要一天的事(用SQL查出數據,用Excel處理),現在兩秒鍾就解決了。

過去用三張表(a 、b、c)查詢合並成一張表用等於的窮舉語句寫法:

1、a 有銷售、b有銷售、c有銷售;

2、a有銷售、b有銷售、c無銷售;C對應的字段就用0填充。

3、a有銷售、b無銷售、c有銷售;b對應的字段就用0填充。

4、a有銷售、b無銷售、c無銷售;b、c對應的字段用0填充。

5、a無銷售、b有銷售、c有銷售;a對應的字段就用0填充。

6、a無銷售、b有銷售、c無銷售;a、C對應的字段就用0填充。

7、a無銷售、b無銷售、c有銷售;a、b對應的字段就用0填充。

8、a無銷售、b無銷售、c無銷售;這種情況就可以不用了。

一看就很麻煩,有時還把自己饒暈了。

現在用左鏈接,寫法如下:

1、先把三張表共同的字段取出去掉重復項放進一個臨時表;

2、用臨時表左鏈接a表,空值賦值為0;

3、用上面的結果再左鏈接b表,空值賦值為0;

4、再用上面的結果再左鏈接C表,空值賦值為0;

再把語句放入過程里,把區域設置為輸入參數,在執行過程時直接輸入區域,兩秒搞定。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM