SQL Deyimlerinin Yürütülme Sırası

T-SQL’de temel olarak veri arama, bulma ve işleme işlemleri gerçekleştirilir. En çok kullanılan yantümce hiç şüphesiz “SELECT” deyimidir. Peki SELECT ve onunla birlikte kullandığımız ifadeler hangi sırayla yürütülmektedir. SQLHacks’de denk geldiğim bu küçük bilgiyi paylaşmakta fayda görüyorum. Bir SELECT cümlesi yüzeysel olarak aşağıdaki formata sahiptir.
SELECT DISTINCT TOP (list)
FROM (LeftTable)
(join type) JOIN (RightTable)
ON (condition])
WHERE (condition)
GROUP BY (list)
WITH (CUBE | ROLLUP)
HAVING (condition)
ORDER BY (list)

SQL Server öncelikle FROM alanındaki kaynakları işler. Ardından kaynaklar üzerinde tanımlı koşulları çalıştırır. Varsa gruplama, özetleme işlemlerini uygular ve son olarak hangi alanlar istenmişse onları seçer.
Bu ifadeler için değerlendirilme, yürütülme sırası aşağıdaki gibidir;

  1. FROM (LeftTable – Sol Tablo)
  2. ON (condition – Şart, koşul)
  3. (join type) JOIN (RightTable – JOIN türü, Sağ tablo)
  4. WHERE (condition – Şart, koşul)
  5. GROUP BY (list – özetleme alanları)
  6. WITH (CUBE | ROLLUP)
  7. HAVING (condition – özetlenmiş alan filtreleri)
  8. SELECT
  9. DISTINCT
  10. ORDER BY (list – sıralama alanları)
  11. TOP (list – kayıt adeti)

Bir cevap yazın

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