From: | "Daniel Verite" <daniel(at)manitou-mail(dot)org> |
---|---|
To: | "Denis =?ISO-8859-15?Q?Bitouz=E9?=" <dbitouze(at)wanadoo(dot)fr> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Spécifier un premier élément dans une clause select... order by |
Date: | 2009-12-17 16:33:31 |
Message-ID: | 8e3a510e-2d30-4798-aa0f-1c3c41ff70aa@mm |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Denis Bitouzé wrote:
> 1. le tri sur les noms et prénoms sur les noms et prénoms donne :
>
> 400 BACH JEAN SEBASTIEN
> 200 BEETHOVEN LUDWIG VAN
> 100 MOZART WOLFGANG AMADEUS
> 300 VIVALDI ANTONIO
>
> 2. la troncature de ce résultat en y conservant seulement les lignes à
> partir de celle qui a 300 pour id_etu donne bien :
>
> 300 VIVALDI ANTONIO
Mais s'il y a une autre entrée avec nom=VIVALDI et prénom=ALBAN, la requête
postée la conserve au lieu de l'éliminer, contrairement à ce qui est attendu.
Dans l'esprit, la requête postée est bien la solution, mais elle n'est pas
finie car elle ne gère pas le prénom en critère de tri de deuxième niveau.
Dans les versions récentes de postgres, il suffit de faire
(nom,prenom)>=(select nom,prenom where id_etu=...), et avec de plus
anciennes, pas sûr que ça marche, il faut peut-être découper le test en deux
clauses, du genre (nom>(select nom...)) OR (nom=(select nom...) AND
prenom>=(select prenom...))
Cordialement,
--
Daniel
From | Date | Subject | |
---|---|---|---|
Next Message | Denis Bitouzé | 2009-12-17 16:50:34 | Re: Spécifier un premier élément dans une clause select... order by |
Previous Message | Denis Bitouzé | 2009-12-17 07:51:56 | Re: Spécifier un premier élément dans une clause select... order by |