web-dev-qa-db-fra.com

Comment sélectionner les cinq premières lignes ou «N» dans Oracle 11g

select distinct ani_digit, ani_business_line from cta_tq_matrix_exp limit 5

Je souhaite sélectionner les cinq premières lignes de mon jeu de résultats. si j'ai utilisé la requête ci-dessus, obtenir une erreur de syntaxe. Merci d'avance

18
Karthikeyan Sukkoor

Vous devrez utiliser DISTINCTavant vous sélectionnez le "top 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 clause n'est pas disponible dans Oracle.

En voyant votre requête, vous semblez être intéressé uniquement par un certain nombre de lignes (non ordonnées en fonction de la valeur de certaines colonnes) et vous pouvez donc utiliser la clause ROWNUM pour limiter le nombre de lignes renvoyées.

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

Si vous souhaitez commander le jeu de résultats, puis limiter le nombre de lignes, vous pouvez modifier votre requête selon les détails du lien fourni par Colin, dans les commentaires ci-dessus.

0
Incognito