タグ

dbとOracleに関するglcsのブックマーク (2)

  • Oracleでlimit offsetもどき - よねのはてな

    postgreSQLにはlimit offsetがあり時には非常に便利な機能。 Oracleの場合、ROWNUMを使って似たような事が出来ます。 Oracleにおいて、HOGEテーブルの検索結果の中から最初の10件を取得したい場合は select * from HOGE where rownum <= 10;または select * from HOGE where rownum between 1 and 10;とします、これは一般的によく使われる方法と思います。 では、10件目から5件取得したいとなった場合はどうでしょう。 上記と同じように select * from HOGE where rownum between 10 and 15;または select * from HOGE where 10 <= rownum and rownum <= 15;とすれば良いのでは?と思いますが

    Oracleでlimit offsetもどき - よねのはてな
    glcs
    glcs 2008/05/21
    Oracleはこんな仕様でいいと思ってるんだろうか……
  • OracleではLimit句が使えない

    ページングでSelect結果の一部のデータをしたいとき、PostgreSQLMySQLで使用できるLimit句はとても便利。たとえばSelect結果の10から14番目までを取得するにはselect * from emp where Limit 10,5でもOracleではLimit句は使えない... ということでOracleではROWNUMを使用してやってみる。(Oracle10g Windows版で検証) ところがこのROWNUMは一筋縄ではいかないのであった。 Order By 句を使って並べ替えをすると、ROWNUMが...select rownum rn ,t.住所コード ,t.市区町村名 ,t.住所1 ,t.住所2 from tb_住所マスタ t order by 住所2;結果 RN住所コード市区町村名住所1住所2

    glcs
    glcs 2008/04/26
    不便
  • 1