Anasayfa / Yazılım / SQL / CTE Kullanarak Toplama Fonksiyonlarının Sorgu İçinde Ayrılması

CTE Kullanarak Toplama Fonksiyonlarının Sorgu İçinde Ayrılması

CTE kullanarak toplama fonksiyonlarının sorgu içinde ayrılmasını sağlayabiliriz. Söz dizimi olarak aşağıdaki gibidir :

WITH CTE Adı AS (SELECT toplama fonksiyonu(kolon2) AS kolon4, kolon3 FROM tablo2 GROUP BY kolon3) SELECT kolon1, kolon4, kolon3 FROM tablo1 INNER JOIN B ON CTE Adı.kolon1 = tablo1.kolon3

AdventureWorks2012 veritabanı üzerinde bir örnek yapalım :

WITH Satis AS (SELECT CustomerID, COUNT(*) AS SatisSayisi, 
SUM(TotalDue) AS ToplamTotalDue, AVG(TotalDue) AS OrtalamaTotalDue 
FROM Sales.SalesOrderHeader GROUP BY CustomerID) SELECT Musteri.CustomerID, SatisSayisi,
ToplamTotalDue, OrtalamaTotalDue FROM Sales.Customer AS Musteri INNER JOIN Satis
ON Musteri.CustomerID = Satis.CustomerID;

2013031907

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir