Précédent   Forum du club des développeurs et IT Pro > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 14/12/2012, 16h53   #1
pfelelep59
Invité de passage
 
Homme
Étudiant
Inscription : décembre 2012
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : décembre 2012
Messages : 2
Points : 1
Points : 1
Par défaut Utilisation de 'case when'

Bonjour à tous,

J'ai 2 tables :
mes transactions: id, date, idcaisse, idhotesse, idoperation
mes operations : id, type_operation

une opération peut être un encaissement, un remboursement, une annulation...

je cherche à connaitre par idhotesse le nombre de transactions total et le nombre de transaction de remboursement sur une ligne .

Exemple:
idhotesse,nbe de transactions, nbe de remboursement
toto, 50 , 10

Et bien... j'ai cherché par moi même, j'ai cherché sur le net (peut être mal) mais ...pas moyen... je galère...
Je travaille en oracle sql.

Bref, j'en suis là, à demander de l'aide... merci
Antoine
pfelelep59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 18h24   #2
tatayo
Expert Confirmé
 
Homme
Responsable de service informatique
Inscription : janvier 2009
Messages : 1 549
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 39
Localisation : France

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Boutique - Magasin

Informations forums :
Inscription : janvier 2009
Messages : 1 549
Points : 3 096
Points : 3 096
Bonjour,
Un truc du genre:
Code SQL :
1
2
3
4
5
 
SELECT idhotesse,sum(case when type_operation = 'remboursement' then 1 else 0 end),count(*)
FROM transaction
INNER JOIN operation ON operation.id = transaction.type_operation
GROUP BY idhotesse

Tatayo.
tatayo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2012, 21h46   #3
pfelelep59
Invité de passage
 
Homme
Étudiant
Inscription : décembre 2012
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : décembre 2012
Messages : 2
Points : 1
Points : 1
Par défaut Merci !

MERCI tatayo, je ne connaissais pas le "case" !

C'est testé et ça fonctionne.
pfelelep59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


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


 
 
 
 
Partenaires

Hébergement Web