web-dev-qa-db-ja.com

Oracle 11gで上位5行または「N」行を選択する方法

select distinct ani_digit, ani_business_line from cta_tq_matrix_exp limit 5

結果セットから上位5行を選択します。上記のクエリを使用すると、構文エラーが発生します。よろしくお願いします

18

DISTINCTを使用する必要がありますbefore「トップ5」を選択します:

SELECT * FROM 
(SELECT DISTINCT ani_digit, ani_business_line FROM cta_tq_matrix_exp) A
WHERE rownum <= 5
24
D Stanley
  select distinct ani_digit, ani_business_line from cta_tq_matrix_exp where rownum<=5;
1
Sai

[〜#〜] limit [〜#〜]句はOracleでは使用できません。

クエリを見ると、特定の列の値に基づいて順序付けされていない特定の行数にのみ関心があるようであるため、[〜#〜] rownum [〜#〜]句を使用して返される行の数を制限します。

select distinct ani_digit, ani_business_line from cta_tq_matrix_exp WHERE rownum <= 5

結果セットを順序付けしてから行数を制限する場合は、上記のコメントで、Colinが提供するリンクの詳細に従ってクエリを変更できます。

0
Incognito