Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
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 20/05/2011, 14h59   #1
Invité de passage
 
Homme
Inscription : mai 2011
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mai 2011
Messages : 9
Points : 0
Points : 0
Par défaut Requêtes avec condition IF

Bonjour à tous,

Je suis novice en SQL et je dois réaliser un exercice.
J'ai deux tables (comptes et mouvements).
Sur la table comptes il y a un champ solde.

J'essaie de réaliser une requête qui calculerai le nouveau solde en fonction de l'action réalisée (débit ou crédit) qui se trouve dans la table mouvements.
Donc si c'est un débit il faudrait soustraire montant à solde. Et inversement si c'est un crédit.

Voici mon code pour l'instant (mais message d'erreur "if non défini dans l'expression")

Code :
1
2
3
4
SELECT [n° client], [n° compte],
IF (montant = "crédit", solde + montant, solde - montant)
FROM comptes, mouvements, 
comptes INNER JOIN mouvements ON [#n° client]=[n° client];
Je me demandais aussi si il était possible à la final de modifier le champ solde de ma table comptes pour pouvoir refaire l'opération à chaque nouveau mouvement.

Merci pour votre aide.
wiidle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 16h01   #2
Expert Confirmé
 
Avatar de Maljuna Kris
 
Homme Avcxjo MoKo
Retraité
Inscription : novembre 2005
Messages : 2 530
Détails du profil
Informations personnelles :
Nom : Homme Avcxjo MoKo
Âge : 60

Informations professionnelles :
Activité : Retraité
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : novembre 2005
Messages : 2 530
Points : 3 523
Points : 3 523
Saluton,


Code :
1
2
3
4
SELECT [n° client], [n° compte],
IF (montant = "crédit", solde + montant, solde - montant) AS nouveauSolde
FROM comptes, mouvements, 
comptes INNER JOIN mouvements ON [#n° client]=[n° client]
__________________
Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
articles : Comment émuler un tableau croisé [quasi] dynamique
et : Une énigme mathématique résolue avec MySQL
recommande l'utilisation de PDO (PHP5 Data Objects)
Maljuna Kris est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h20.


 
 
 
 
Partenaires

Hébergement Web