SQL'de Order By Kullanımı
Bir önceki yazım olan SQL'de Where Kullanımı'nda SQL içinde where komutunun kullanımı anlatmaya çalışmıştım. Bu yazımda ise yine SQL'in önemli parçalarından biri olan Order By kullanımı anlatmaya çalışacağım.
Order By Komutu Nedir?
Order By, veritabanı uygulamalarında listeleyeceğimiz verilerin belirli bir düzen dahilinde görünmesini sağlayan komuttur. Örneğin alfabetik olarak listelemek. (A-Z, Z-A)
Order By kullanmadığımızda verilerimiz ilk eklenen veriden son veriye doğru listelenir. Ama biz belirli bir alanın dikkate alınarak A-Z'ye listelemek için "asc" etiketi kullanılır.
select * from TABLO where ALAN order by ALAN asc;
Aynı verilerimizi bu sefer tersten yani Z-A'ya listelemek için "
desc" etiketini kullanırız.
select * from TABLO where ALAN order by ALAN desc;
Bunun dışında biraz daha karmaşık bir yapı düşünürsek ve verimizi tek düzen değilde iki üç koşula (alan) göre listelemek gerekebilir. Ben bu tarz bir uygulamayı bir etkinlik programında yapmıştım. Önce yıllara ardından ay ardından gün olarak düzenli olarak sıralamıştım. Bunun için gerekli kod ise aşağıda. Burda nasıl bir veritabanı yapınızın olduğuda önem kazanıyor. Örneğin gun-ay-yil olarak 3 alanda yaratılabilir veya tek alanda. Ben tek alan olarak düşünüp ona göre ekliyorum.
select * from TABLO where ALAN order by year(TARIH_ALAN) desc, month(TARIH_ALAN) desc, day(TARIH_ALAN) desc;
Order By'ın en temel kullanımı bu şekilde. Umarım yazı basit ve anlaşılır olmuştur. Bu ve benzeri konuları yine eklemeye devam edeceğim.
ProgramlamaAyberk Atasay22 Ocak 2009, PerşembeEkle Bunu
Erdi
24 Şubat 2010, ÇarşambaArkadaşım eline sağlık ben yeniyim , bu konularda bi hayli zorlanıyordum ... sayende anladım ,anlatım çok başarılı...
Abdullah Uğraşkan
23 Ocak 2009, CumaArkadaşım eline sağlık, yeni başlayanlar için güzel bir içerik. Madem konu order by bende bişiy ekleyeyim. Mssql veritabanı kullanıyorsanız, rastgele veri çekmek için NewID() ifadesini kullanabilirsiniz;
Select * from tablo_adi order by NewID()
Gelecek kayıtların sayısı içinse TOP ifadesiyle gelecek rastgele veri sayısını ayarlayabilirsiniz.
Select top 5 from tablo_adi order by NewID()