PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

fonction row_number

Technique - général | fonction row_number

Par 78alex78 le 16/01/2007 - 16:16

bonjour,
j'aimerai savoir quelle fonction permet d'établir un classement des enregistrements d'une table.
exemple : table "chiffres" (colonnes : numero, quantite)
je voudrais établir un classement (avec le n° dans le classement) des différents enregistrements.
j'ai donc écrit la requete suivante :
SELECT Numero, (ROW_NUMBER() OVER(ORDER BY quantite DESC)
FROM Chiffres;
mais j'ai une erreur de syntaxe avec le "over".
pouvez-vous m'aider?
merci d'avance

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Bonjour Votre requête n'e

Christophe Chauvet/ = 16 Janvier, 2007 - 18:28

Bonjour

Votre requête n'est valable que sous Oracle, sous PostgreSQL vous devriez y arrivé avec un sous-requête + LIMIT

Cordialement.

Christophe Chauvet
KrysKool.org


merci beaucoup. après avoir

78alex78/ = 17 Janvier, 2007 - 10:48

merci beaucoup. après avoir parcouru quelques forums, c'était bien la conclusion à laquelle j'étais arrivée...
bonne journée


Une séquence peut être ?

ducteil/ = 19 Janvier, 2007 - 01:08

Bonjour

Cette instruction peut aider :

CREATE SEQUENCE seq;
CREATE TABLE montruc AS SELECT nextval('seq') as n, titre FROM breve limit 10;
DROP SEQUENCE seq;
SELECT * FROM montruc;
--DROP TABLE montruc;

avec "titre" un champs de la table breve.
"limit 10" pour montrer qu'on peut y ajouter la condition que l'on veut.

L'instruction DROP IF EXIST (TABLE et SEQUENCE) serait ici très utile (version 8.2)

Olivier


© PostgreSQLFr, tous droits réservés.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.