PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#2 Re : Général » Ajouter une ligne total en fin de select » 14/01/2011 12:14:23

Salut !

Merci pour votre aide !

Le code utilisant AS ne marche pas, mais avec le "order by 2", ça marche.
Mais je me demande quelle est la signification de ce "order by 2" ?

A+

#3 Re : Général » Ajouter une ligne total en fin de select » 13/01/2011 13:00:16

hum, non ça ne marche toujours pas, j'ai :
ERROR:  schema "tmp" does not exist

#4 Re : Général » Ajouter une ligne total en fin de select » 13/01/2011 12:48:15

Mais je viens de tenter autre chose :

SELECT
*
FROM (
(
 select Organisme.nomOrganisme,
   sum(NombreEmploye.nombre) AS Countt
 from NombreEmploye, Organisme
 where NombreEmploye.idOrganisme=Organisme.idOrganisme
 group by Organisme.nomOrganisme
)
union
(
 select 'TOTAL' as TOTAL,
   sum(NombreEmploye.nombre) AS Countt
 from NombreEmploye
)
) tmp
ORDER BY Countt
;

Et ça marche !
Et oui, le TOTAL est supérieur à tous les autres SUM, donc il est mis en dernier.

A+ et merci !

#5 Re : Général » Ajouter une ligne total en fin de select » 13/01/2011 12:40:58

Salut !

Merci pour ta réponse, mais ça ne marche pas...
J'ai cette erreur :
ERROR:  missing FROM-clause entry for table "Organisme"
LINE 21: ORDER BY Organisme.nomOrganisme='total' asc, Org...

#6 Général » Ajouter une ligne total en fin de select » 13/01/2011 12:03:10

Mathias77
Réponses : 11

Bonjour !

Après de nombreuses heures de recherche sur les forums, je n'arrive toujours pas à faire ce que je veux faire : ajouter en fin de select une ligne total.

Voici ce que je veux faire :

Organisme     Nombre

AA                12
BB                26
YY                30
TOTAL          68

J'utilise deux selects reliés par un union mais le union me panache les deux selects et ordonne par ordre alphabétique, si bien que j'obtiens :

Organisme     Nombre

AA                12
BB                26
TOTAL           68
YY                 30

Comment faire ?????

Je joins mon code (simplifié) :

(
select Organisme.nomOrganisme,
       sum(NombreEmploye.nombre)
from NombreEmploye, Organisme
where NombreEmploye.idOrganisme=Organisme.idOrganisme
group by Organisme.nomOrganisme
)
union
(
select 'TOTAL' as TOTAL, sum(NombreEmploye.nombre)
from NombreEmploye
)
;

Merci pour votre aide !

Pied de page des forums

Propulsé par FluxBB