SQL Server

SQL Server LIMIT Kullanımı

Merhaba arkadaşlar bu yazıda SQL Serverda belirli bir aralıktaki verileri çekmek için bir kaç tane yöntem deneyeceğiz.

Öncelikle şunu belirteyim daha önce MySQL kullandıysanız LIMIT ifadesini görmüşsünüzdür. SQL Serverda LIMIT yan cümleciği bulunmaz. Bu işlem için genellikle cursorler kullanılır. Bu yazıda bir kaç farklı yöntemle SQL Serverda LIMIT ifadesinin yaptığı işlemi yapacağız.

MySQL geliştiricilerinin aşina olduğu ancak SQL Server’da bulunmayan LIMIT ifadesinin MySQL kullanımına öncelikle bir göz atalım.

Öğrenci tablosunda 100. kayıttan sonra 20 tane kayıt çek diyoruz.

Yöntem 1: Ama sadece kayıt çekmese ve kayıtların çekildikten sonra her hangi bir düzeni olması gibi bir şart yoksa TOP ifadesini ve ORDER BY ifadesini kullanarak belirli aralıkta verileri çekeriz. Yukarıdaki gibi 100. kayıttan başlayıp 20 tane kayıt çeken SQL Server örneği aşağıdaki gibi olacaktır.

İçerideki sorgu ilk 120 kaydı id sırasıyla çeker, ardından dışarıda sorgu ise son id değerinden başlayarak sonran 20 kaydı alır. (100-120 arasındaki kayıtlar sorgulanmış olur)

 

Yöntem 2: Nispeten daha okunabilir yöntem olan EXCEPT ifadesi ile sınır dışındaki kayıtları hariç bırakabiliriz.

Yukarıdaki örnekte ilk 120 kaydı çektik ve ilk 100 kaydı hariç bıraktık.

 

Yorum bırak