
No.5ベストアンサー
- 回答日時:
SELECT *
FROM
(SELECT "商品CD", ...
FROM table1
WHERE "商品CD" >= 1111
ORDER BY "商品CD")
WHERE ROWNUM <= 10
ROWNUMが振られるのはORDER BYの前です。大小の比較ができるのは数値のみなので、商品CDが文字列の場合、他の方法を探す必要があります。
Oracle9i SQLリファレンス P2-86 参照
~以下引用~
同じ問合せでROWNUM にORDER BY 句が続く場合、ORDER BY 句によって行が再び順序付けられます。結果は、行がアクセスされる方法によって異なります。たとえば、ORDER BY 句の指定によってOracle が索引を使用してデータにアクセスする場合、索引なしの場合とは異なる順序で行が取り出されることがあります。そのため、後続の文には前述の例と同じ効果はありません。
SELECT * FROM employees WHERE ROWNUM < 11 ORDER BY last_name;
ORDER BY 句を副問合せに埋め込んでROWNUM 条件をトップレベル問合せに置いた場合、行の順序付けの後でROWNUM 条件を強制的に適用させることができます。たとえば、次の問合せは、小さい順から10 個の従業員数を戻します。これは、上位N 番までの問合せと呼ばれることがあります。
SELECT * FROM
(SELECT * FROM employees ORDER BY employee_id)
WHERE ROWNUM < 11;
前述の例では、ROWNUM 値はトップレベルのSELECT 文の値です。これらの値は、副問合せ内のemployee_id によって行が順序付けられた後で生成されます。
No.4
- 回答日時:
OracleだとROWNUMを利用するしかないかな????
SELECT Code, Name FROM Item
WHERE Code >= 1111
AND ROWNUM <= 10
ORDER BY Code
SQL ServerだとTOP関数が利用できるんですけどね。

No.3
- 回答日時:
Oracleですよね?
#1の方が書かれてるTop句は使えるのかなぁ・・・?
こんな感じでいかがでしょう?
select AA,BB
from (select AA,BB from test where AA >= '1113')
where rownum <=10
No.2
- 回答日時:
データベースの中には「順番」は“ありません”ので、「ピンポイントでヒットしたものより後ろ」という抽出はできません。
SELECTで取り出せる順番は、一定しているようですが、内部的なインデックスが変わると、変わります。
商品コードが数値であるという前提で、指定した数値よりも商品コードが大きいレコードから、商品コードの昇順にならべて、先頭から10件取り出す、ということはできます。←過去、いたるところで質問されています
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- Oracle 列1と列2の関係性で列3の条件に一致するレコードを抽出したい 1 2022/04/13 07:46
- ネットスーパー 皆さんはネットショップで 10 2022/10/01 13:36
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Visual Basic(VBA) 【ExcelVBA】Powerクエリーでいうピボット解除と同じ処理をVBAで 4 2022/07/06 17:09
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- スピーカー・コンポ・ステレオ レコードの出し入れがし易い内袋のおすすめを教えてください。 レコードの内袋なのですが、商品付属の内袋 4 2022/08/04 20:18
- SQL Server これをSQL文で出来るでしょうか? 1 2023/03/26 02:16
- Oracle Oracleですがsqlで質問です。 サブクエリ内で番号というカラムで昇順の1レコード目を取得したい 3 2023/05/22 10:02
このQ&Aを見た人はこんなQ&Aも見ています
-
性格悪い人が優勝
できるだけ性格悪い人になって回答をお願いします。
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
これ何て呼びますか
あなたのお住いの地域で、これ、何て呼びますか?
-
単二電池
あなたの家に何本ありますか?
-
かっこよく答えてください!!
あなたは今にも別れそうなカップルの彼女の恋愛相談に乗っています。
-
テーブルの最後(最新)のレコードを抽出したい
MySQL
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
Oracleでの文字列連結サイズの上限
Oracle
-
-
4
SELECTで1件のみ取得するには?
Oracle
-
5
Statement ignored というエラー
Oracle
-
6
eclipseのデバッグ中に変数の値(長い文字列)を確認したい
Java
-
7
データベース関係で、データの洗い替えとはどのような事を行うことでしょう
IT・エンジニアリング
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【PL/SQL】FROM区に変数を使う方法
-
単一グループのグループ関数で...
-
AccessのSQL文で1件のみヒット...
-
SQL*Loader Append
-
引数によってwhere句を切り替え...
-
トランザクションログを出力せ...
-
アクセスのレポートでレコード...
-
group byの並び順を変えるだけ...
-
SELECT FOR UPDATE で該当レコ...
-
where句中のtrim関数について
-
あるカラムに同じ値を持つレコ...
-
osqleditについて
-
SQLで条件にヒットしたレコード...
-
大量レコードをTRUNCATEせずに...
-
「数字で始まらない」ものを抽...
-
トリガからプロシージャのコー...
-
PL/SQL内の共通関数の引数にフ...
-
440 OIP エラーについて(ORADC)
-
負荷試験の後重くなります。。。
-
データ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
単一グループのグループ関数で...
-
【PL/SQL】FROM区に変数を使う方法
-
group byの並び順を変えるだけ...
-
SELECT FOR UPDATE で該当レコ...
-
トランザクションログを出力せ...
-
where句中のtrim関数について
-
SQL*Loader Append
-
データ
-
AccessのSQL文で1件のみヒット...
-
引数によってwhere句を切り替え...
-
アクセスのレポートでレコード...
-
「数字で始まらない」ものを抽...
-
osqleditについて
-
SQLで条件にヒットしたレコード...
-
デフォルトでデータが表示され...
-
BLOB型項目をSQLの検索条件に指...
-
PL/SQL内の共通関数の引数にフ...
-
1レコード全てを改行なしで表...
-
ACCESS レコードの並び順について
-
updateで複数行更新したい
おすすめ情報