CTE比自加入和子查詢有什麼優勢? 我們可以通過使用CTE實現使用自連接/子查詢。想知道除了簡單的cte語法之外,使用cte來提升這些方法的好處!?CTE通過自加入和子查詢
-1
A
回答
1
CTE允許輕鬆創建導航父子結構的遞歸查詢。
-1
當一個查詢確實是複雜的(認爲的5-6派生表的可能性,大約20連接和有條件的地方,你知道的7個或更多 - 在企業環境中的平均報告查詢),那麼熱膨脹係數有助於更容易瞭解發生了什麼,從而使查詢更易於維護。當事情以複雜的方式一起工作時,它們也可以使得獲得實際正確結果更加簡單。
所以說,我需要的鄰接一堆符合一定條件的訂單的所有信息tecnnical的報告。由於信息將被彙總,因此最終結果應該與您剛查詢訂單表時得到的記錄數相同。所以你從一個CTE開始就可以得到你想要的訂單。你可以做一個簡單的選擇,並找到滿足條件的37個訂單。現在你知道你的最終結果應該是什麼,並且隨着你的查詢越來越複雜,你可以很容易地檢查你的問題。
所以現在我需要在每個訂單中的個別項目的總和。也許是因爲它們存儲在多個表格中(比如說服務和貨物在不同的表格中),那麼你就有一個工會,你需要得到這筆錢。所以這成爲第二個CTE。
現在,您需要爲訂單的接觸點,但有些訂單有關聯的多個人,你必須要找到通過添加一些標準的主要聯繫人。所以現在你有第三個CTE。
那麼你有兩個送貨地址,所以你需要或兩者連接在一起還是應該每一批是一個單獨的記錄?此時,通過使用多個CTE來繼續添加大塊數據會更容易,並且當您進入最終查詢時,它會相對簡單,因爲所有複雜性都在單個塊中。
那就從現在開始,當有人需要改變商業規則來確定一個信息塊一年的時間,你可以改變只是一個組成部分,有信心多了也沒有影響到其他部分如何一起工作。維護起來容易得多。
當然什麼@TabAllerman說一下遞歸。
相關問題
- 1. 將CTE加入主查詢
- 2. 如何通過子查詢加入自我加入?
- 3. Access2010傳遞通過Oracle CTE查詢
- 4. 子查詢的自加入
- 5. SQL子查詢/自加入
- 6. 添加「和」和「或」子句通過rails查詢界面查詢
- 7. 通過加入查詢
- 8. 通過並加入查詢
- 9. 困惑如何去查詢..自己加入或通過子查詢?
- 10. NHibernate的查詢子查詢組通過加入回主實體
- 11. 行爲CTE子查詢的
- 12. 子查詢中的CTE
- 13. DB2子查詢中的CTE
- 14. 子查詢和加入
- 15. MySql加入和子查詢
- 16. 加入和子查詢
- 17. 過濾器cte xpath查詢
- 18. 通過使用插入和值和子查詢插入行
- 19. CTE和滯後查詢
- 20. 查詢SQL Server中使用CTE獲得總和,並加入
- 21. 如何添加與CTE的左加入,檢查我的查詢
- 22. 子查詢中加入子查詢
- 23. 在CTE查詢
- 24. 從CTE查詢
- 25. 加入子查詢
- 26. 加入子查詢
- 27. 子查詢 - 加入
- 28. SQL Server - 相關子查詢/自加入
- 29. 如何將子查詢加入自己?
- 30. 從屬子查詢自加入
一些具體的例子會有幫助。否則,這個問題非常廣泛。 – sstan
你是指CTE自我加入的是什麼?請發表一個例子。我認爲你的意思是派生表 - 而不是子查詢 – Paparazzi