Limitli SQL
Bir SQL sonucu oluşan verilenlerin sadece 10 tanesini çekmek istiyorsunuz.
Örneğin girilen son 10 haberi ana sayfada göstermek istiyorsunuz.
Maalesef bunun için Oracle’da MySQL’deki gibi “limit” parametesi yoktur.
Mysql:
select * from table_name order by column_name desc limit 10;
“select * from table_name order by column_name”
sql ‘inden dönecek olan son 10 kayıt gelir.
Bu işlemin Oracle’daki karşılığı aşağıdaki gibi yapılmalıdır.
Oracle:
select * from ( select * from table_name order by column_name desc ) where rownum <= 10;
Uyanıklık yapıp aşağidaki şekilde denemeye çalışmayınız.
Çünkü bu şekilde sağlıklı çalışmıyor.
select * from table_name where rownum <=0 order by column_name desc
Recent Comments