私は現在Oracle 10gデータベースを照会するアプリケーションを開発中です。 Oracleには、SQL ServerでTop(x)を使用するのと同じことがありますか?私はそれがテーブルに追加される順序でデータが欲しいです。 ご協力いただければ幸いです。oracle10gのselect top相当品は何ですか
私は5つの最高値を望んでいないことに注意してください。私は5つのトップ値が欲しい。行がテーブルに追加された物理的な順序を序数位置といいます。インデックスでもソートはありません。
SELECT *
FROM (
SELECT *
FROM table_name
ORDER BY primary_key_column
)
WHERE ROWNUM <= 10;
あなたは外側のクエリを必要としているためとして:あなたは、あなたが行うことができます(シーケンスまたは日付/タイムスタンプの値を経由して)主キーのインクリメント値でデータを挿入していると仮定すると
読み取りを上位nとページネーションに関するトムを確認する:http://www.oracle.com/technetwork/issue-archive/2007/07-jan/o17asktom-を093877.htmlおよびhttp://www.oracle.com/technetwork/issue-archive/2006/06-sep/o56asktom-086197.html –
作成された日付タイプを表に格納するのか、シーケンスに格納するのかそうでない場合、Oracleは表に追加された行の順序を格納しないため、解決策はありません(rowid、rownum、またはデフォルトの順序を使用して行を表に挿入することはできません) 。 –
[Oracle SQL - 列の上位5つの値を取得する方法](http://stackoverflow.com/questions/2306744/oracle-sql-how-to-retrieve-highest-5-values-of-a)の可能な複製-column) – MT0