SQL Server查詢中對於單列數據','分割的數據進行的拆分操作,集合的每一個行變多行


1、cross apply 

  cross apply 我們可以把它看作成是inner join 來使用

2、outer apply 

  outer apply我們可以把它看做是left join 來使用

注意:

  1、得到的結果集 雖然是一樣的,但是區別在於,cross apply 和outer apply 在使用的過程中,是不需要加入條件來進行連接。

  2、cross apply 和outer apply 后面接函數之后,所使用到的字段會自動和 它們前面的結果集進行自動關聯,大幅度提高查詢性能。

 

 

下面我們正式看一個例子。

查詢sql

原始表的字段,我們希望將該列字段變成 沒有 ' ,' 分割的字段列,方便進行其他的查詢處理

 


 

 

 下面我們看看outer Apply 使用后得到我們需要的結果

查詢sql:

結果截圖:

 

 

本文章純屬個人做個筆記,也希望能給一些人帶來幫助。

若有疑問,歡迎提出。

 

來源參考:SQLServer連接查詢之Cross Apply和Outer Apply的區別及用法


免責聲明!

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



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