Son Haberler
Anasayfa / Yazılım / SQL / Türetilmiş Tablo Kullanarak Toplama Fonksiyonlarının Sorgu İçinde Ayrılması

Türetilmiş Tablo Kullanarak Toplama Fonksiyonlarının Sorgu İçinde Ayrılması

MS SQL’de türetilmiş tabloları kullanarak bir sorgu içinde yer alan toplama fonksiyonları ile sorgunun diğer kısmını ayırabiliriz. Söz dizimi olarak aşağıdaki gibidir :

SELECT kolon1,kolon4,kolon3 FROM tablo1 AS A INNER JOIN (SELECT toplama fonksiyonu(kolon2) AS kolon4, kolon3
FROM tablo2 GROUP BY kolon3) AS B ON Açkolon1 = b.kolon3

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

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

2013031905

Dikkat edilmesi gereken dışta yer alan her kolon, türetilmiş tablo içinde listelenmelidir. Ayrıca türetilmiş tablo için bir alias yani bir takma ad tanımlamak gerekir. Toplama fonksiyonlarının bir sorgu içinde diğer sorgudan türetilmiş tablo kullanılarak ayrıştırılması veritabanı performansı için önemlidir. Sorgular daha hızlı cevap verir. Dışta yer alan sorgunun her bir satırı için türetilmiş tablo birden fazla satır dönebilir. Ayrıca çoklu toplama fonkisyonları kullanabilme imkanını bize tanır.

Bir cevap yazın

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