Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/02/2008, 12h25   #1
Invité de passage
 
Inscription : mai 2007
Messages : 13
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 13
Points : 4
Points : 4
Par défaut SUM, CASE, GROUP BY et sous requête

Bonjour à tous.

J'ai un léger problème avec une requête Oracle.

Code :
1
2
3
4
5
6
7
8
9
10
11
SELECT 
SUM(nbMdp) AS NBMDP
FROM (
  SELECT COUNT(*) AS NBMDP
  FROM maTableA WHERE (...)
  GROUP BY monChampsA
  UNION ALL
  SELECT COUNT(MDPMDP) AS NBMDP
  FROM maTableB WHERE (...)
  GROUP BY monChampsB
)
Seulement, j'aurai aimé ajouté une conditions CASE :
Code :
1
2
3
4
CASE 
  WHEN SUM(nbMdp)>0 THEN '1'
  ELSE '0'
END AS ISMDP
Ce qui donnerai :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT 
SUM(nbMdp) AS NBMDP
CASE 
  WHEN SUM(nbMdp)>0 THEN '1'
  ELSE '0'
END AS ISMDP
FROM (
  SELECT COUNT(*) AS NBMDP
  FROM maTableA WHERE (...)
  GROUP BY monChampsA
  UNION ALL
  SELECT COUNT(MDPMDP) AS NBMDP
  FROM maTableB WHERE (...)
  GROUP BY monChampsB
)
Mais bien évidemment, ça ne fonctionne pas...
Citation:
ORA-00923 : mot-clé FROM absent de l'emplacement prévu
00923. 00000 - "FROM keyword not found where expected"
J'ai beau cherché des solutions (forum / google), je ne trouve aucune solution.

Merci à ceux qui pourront m'aider.
wisrou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2008, 12h32   #2
Expert Confirmé Sénior


 
Avatar de laurentschneider
 
Homme Laurent Schneider
Administrateur de base de données
Inscription : décembre 2005
Messages : 2 927
Détails du profil
Informations personnelles :
Nom : Homme Laurent Schneider
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : décembre 2005
Messages : 2 927
Points : 4 549
Points : 4 549
as tu essayé d'ajouter une virgule pour séparer les colonnes?
__________________
Mon blog : laurentschneider.com
Mon livre : Advanced Oracle SQL Programming
laurentschneider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2008, 13h19   #3
Invité de passage
 
Inscription : mai 2007
Messages : 13
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 13
Points : 4
Points : 4
Citation:
Envoyé par laurentschneider Voir le message
as tu essayé d'ajouter une virgule pour séparer les colonnes?
des fois j'ai un peu honte...
Merci de m'avoir montré mon erreur
wisrou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h00.


 
 
 
 
Partenaires

Hébergement Web