28 Haziran 2015 Pazar

Temel SQL Dersi 6: ORDER BY Elemanı







ORDER BY Elemanı


SELECT sorgusu ile çektiğimiz kayıtları (sonuç kümesini) sıralamak için ORDER BY anahtar kelimesini kullanırız. Bu sıralama belirtilen kolona göre yapılır. Ve varsayılan olarak artan (küçükten büyüğe) sıradadır. ORDER BY için sözdizimi (syntax – sintaks) aşağıdaki gibidir:
SELECT kolon_adı(ları)
FROM tablo_adı
ORDER BY kolon_adı(ları) ASC|DESC
Burada sıralamanın azalan (büyükten küçüğe) şekilde olmasını istiyorsak DESC anahtar kelimesini kullanırız. Artan şekilde olması için ASC yazmamız veya hiç bir şey yazmamamız yeterlidir.
Örnek sorgularımız için kullanacağımız Uyeler tablosu:
uye_adiisimsoyisime-postacinsiyet
osman.eOsmanErolosman.e@osman.comE
derya.zDeryaZarderya.z@derya.comK
meryem.aMeryemArmeryem.a@meryem.comK
emre.aEmreAydınemre.a@emir.comE
levent.dLeventDenizlevent.d@levent.comE

 SELECT isim, soyisim FROM uyeler ORDER BY isim
isimsoyisim
DeryaZar
EmreAydın
OsmanErol
LeventDeniz
MeryemAr


Görüldüğü gibi sonuç kümesi isim kolonuna küçükten büyüğe göre sıralandı.
 SELECT isim, soyisim FROM uyeler ORDER BY soyisim DESC
isimsoyisim
DeryaZar
OsmanErol
LeventDeniz
EmreAydın
MeryemAr


Bu sorgu ile de  sonuç kümesini soyisim kolonuna göre azalan (büyükten küçüğe) şekilde sıralamış olduk.
Aşağıdaki sorguyu da Personel tablomuz için yazalım:
per_noisimsoyisimyascinsiyetkentulkemaas
1AhmetYılmaz20EAnkaraTürkiye2000
2MehmetEfe22EBoluTürkiye1800
3AyşeCan23KİstanbulTürkiye2500
4FatmaAk35KAnkaraTürkiye2800
5JohnSmith45ENew YorkABD3500
6EllenSmith40KNew YorkABD3000
7HansMüller30EBerlinAlmanya4000
8FrankCesanne35EParisFransa3700
9AbbasDemir26EAdanaTürkiye1500
10HaticeYılmaz26KİstanbulTürkiye3000


Erkeklerden Türkiye’de olanları aldıkları maaşa göre artan şekilde sıralayan sorgu:
 SELECT * FROM personel WHERE cinsiyet='E' AND ulke='Türkiye' ORDER BY maas
per_noisimsoyisimyascinsiyetkentulkemaas
9AbbasDemir26EAdanaTürkiye1500
2MehmetEfe22EBoluTürkiye1800
1AhmetYılmaz20EAnkaraTürkiye2000


Görüldüğü gibi ORDER BY anahtar kelimesi her zaman sorgunun sonuna geliyor. Çünkü sorgunun kendisi sonuç kümesini belirlerken ORDER BY yalnızca bu sonuç kümesini sıralıyor.

Hiç yorum yok:

Yorum Gönder