VERİTABANI SİSTEMLERİ Dersi Veri Sorgulama soru detayı:
SORU:
Sorgu sonuçlarının sıralanmasından örnek aracılığıyla bahsediniz?
CEVAP:
Seçme komutunun mantıksal işleme sırasının son iki adımı olan ORDER BY ve TOP ifadeleri elde edilen veri kümesinin kullanıcı ya da istemci yazılıma iletilmeden önce sıralanmasını sağlar. SELECT komutunun son kısmında yer alan ORDER BY ifadesinden sonra veri kümesinin istenilen alanlara göre sıralanması sağlanır. Aşağıda [Çalışanlar] tablosunun [Şehir], [Soyadı] ve [Ad] alanlarını sorgulayarak elde edilen veri kümesinin önce [Şehir]’e göre artan, [Ad]’ a göre azalan ve [Soyadı] alanına göre artan sıralayan bir seçme sorgusu yer almaktadır.
SELECT Şehir, Soyadı, Ad FROM Çalışanlar
ORDER BY Şehir, Ad DESC, Soyadı
Yukarıdaki örnek sorguya dikkat edilirse artan sıralama yapılan alan adlarının yanında herhangi bir ifade yok iken azalan sıralanmak istenen [Ad] alanının yanında DESC (DESCending: azalan) kelimesi yer almaktadır. Sorgu ifadelerinde sıralama yapılacak alanların sonuç kümesinde bulunma zorunluluğu yoktur. Bazı durumlarda da SELECT komutu ile elde edilen verinin en üst satırlarının görüntülenmesi gerekebilir. Örneğin en fazla satış yapılan on müşteri ya da en fazla ciro yapılan ürün listesi elde edilmek istenebilir. VTYS tüm veri hazırlama sürecini yerine getirdikten sonra en son TOP kısmını işleyerek en üstte yer alan satırlar görüntülenir ya da iletilir. TOP ifadesinin kullanımında doğal olarak verinin sıralanması da söz konusudur. Aksi durumda en üstte yer alacak verilerin çok bir anlamı olmayacaktır. Northwind veritabanında liste fiyatı en fazla olan üç ürünü bulmak için aşağıdaki sorgu yeterli olacaktır.
SELECT TOP (3) [Ürün Adı], [Liste Fiyatı]
FROM Ürünler ORDER BY [Liste Fiyatı] DESC
Sorguda TOP ifadesinden sonra parantez içinde yazılan ‘3’ ifadesi anlaşılacağı üzere en üstte yer alan üç satırın görüntülenmesini sağlar. Diğer taraftan sorgunun son kısmında yer alan sıralama komutunun yapısına dikkat edilmelidir.