Comment sélectionner le numéro de ligne dans postgres.
J'ai essayé ceci:
select
row_number() over (ORDER BY cgcode_odc_mapping_id)as rownum,
cgcode_odc_mapping_id
from access_odc.access_odc_mapping_tb
order by cgcode_odc_mapping_id
et j'ai cette erreur:
ERREUR: erreur de syntaxe à ou près de "over" LINE 1: sélectionnez row_number () over (ORDER BY cgcode_odc_mapping_id) comme
J'ai vérifié ces pages: Comment afficher les numéros de ligne dans une requête PostgreSQL?
Voici ma requête:
select row_number() over (ORDER BY cgcode_odc_mapping_id)as rownum,cgcode_odc_mapping_id from access_odc.access_odc_mapping_tb order by cgcode_odc_mapping_id
c'est l'erreur:
ERREUR: erreur de syntaxe à ou près de "over" LINE 1: sélectionnez row_number () over (ORDER BY cgcode_odc_mapping_id) comme
sql
postgresql
window-functions
Maverick
la source
la source
Not Working
ne nous dit rien sur quoi nous pouvons aider. S'il vous plaît pourriez-vous donner des messages d'erreur et / ou toute autre information pertinente. Veuillez également spécifier la version de PostgreSQL que vous utilisez.select version()
- il n'y a pas (et n'a jamais été) de version 1.8Réponses:
Voici la section pertinente de la documentation.
PS Ceci, en fait, correspond parfaitement à la réponse dans la question référencée.
la source
OVER
article:OVER (ORDER BY id)
. Sinon, la commande n'est pas garantie.over ()
) cependant si vous avez une requête externe, réorganisez bien sûr l'ordre des résultats ref: stackoverflow.com/a / 3397149/32453 commentaires