Oracle ROWNUMでの範囲指定 [Oracle]
Oracleで行の範囲指定って面倒くさい。
MySQLやPostgreSQLの offset や limit に慣れてただけにちょっと苦痛。
これはOK。
これもOK。
以下NG。
こうすればOK。
※デカいテーブルの場合はもうちょっと工夫が必要。
MySQLやPostgreSQLの offset や limit に慣れてただけにちょっと苦痛。
これはOK。
select * from TEST where rownum<=10;
これもOK。
select * from TEST where rownum between 1 and 10;
以下NG。
select * from HOGE where rownum > 10 and rownum <=20;
select * from TEST where rownum between 11 and 20;
こうすればOK。
select * from (select TEST.*,rownum as rownum1 from TEST) where rownum1 between 11 and 20;
※デカいテーブルの場合はもうちょっと工夫が必要。
2008-03-13 14:55
nice!(0)
コメント(0)
トラックバック(0)
コメント 0