{MySQL} différentes conditions sur un champs
Résolu
Mouradif
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
Mouradif Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Mouradif Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- {MySQL} différentes conditions sur un champs
- Mysql community server - Télécharger - Bases de données
- Excel reporter des données sur une autre feuille avec conditions ✓ - Forum Excel
- Je ne suis pas un robot confidentialité - conditions ✓ - Forum Mail
- Mise en forme conditionnelle excel plusieurs conditions - Guide
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
5 réponses
Bonjour,
Biensûr que c'est faisable !! ou alors j'ai pas compris la question.
Voici un exemple (que je n'ai pas testé) :
( SELECT es, SUM(POIDS) GROUP BY es )
UNION
( SELECT es, SUM(POIDS) WHERE or = 1 GROUP BY es )
La première partie te renvoie le total des poids E et S (sans se soucier de la donnée 'or').
La seconde partie te renvoie le total des poids E et S qui ont or = 1. Tu pourras y ajouter un WHERE si tu ne veux que les E...
Pour info, dans ton ordre de création de table :`or` tinyint(4) DEFAULT '0'
Si tu es consciencieux, tu ne devrais pas mettre de guillemets autour du 0, car c'est un entier.
(même si je sais, ca ne change rien, et ca fonctionne)
En espèrant t'avoir aidé;
Bonne journée !
Biensûr que c'est faisable !! ou alors j'ai pas compris la question.
Voici un exemple (que je n'ai pas testé) :
( SELECT es, SUM(POIDS) GROUP BY es )
UNION
( SELECT es, SUM(POIDS) WHERE or = 1 GROUP BY es )
La première partie te renvoie le total des poids E et S (sans se soucier de la donnée 'or').
La seconde partie te renvoie le total des poids E et S qui ont or = 1. Tu pourras y ajouter un WHERE si tu ne veux que les E...
Pour info, dans ton ordre de création de table :`or` tinyint(4) DEFAULT '0'
Si tu es consciencieux, tu ne devrais pas mettre de guillemets autour du 0, car c'est un entier.
(même si je sais, ca ne change rien, et ca fonctionne)
En espèrant t'avoir aidé;
Bonne journée !
Re ;
Je pense que tu pourrais y arriver de cette manière :
(j'ai pas testé le code)
SELECT O1.OUVRIER, SOMMES_IN.SOMME, SOMMES_OUT.SOMME, SOMMES_OR.SOMME
FROM OPERATION O1,
(SELECT O2.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O2 WHERE O2.OR = 1 GROUP BY O2.OUVRIER) SOMMES_OR,
(SELECT O3.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O3 WHERE O3.es = 'e' GROUP BY O3.OUVRIER) SOMMES_IN,
(SELECT O4.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O4 WHERE O4.es = 's' GROUP BY O4.OUVRIER) SOMMES_OUT
WHERE
O1.OUVRIER=SOMMES_OR.OUVRIER AND
O1.OUVRIER=SOMMES_IN.OUVRIER AND
O1.OUVRIER=SOMMES_OUT.OUVRIER;
Je pense que tu pourrais y arriver de cette manière :
(j'ai pas testé le code)
SELECT O1.OUVRIER, SOMMES_IN.SOMME, SOMMES_OUT.SOMME, SOMMES_OR.SOMME
FROM OPERATION O1,
(SELECT O2.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O2 WHERE O2.OR = 1 GROUP BY O2.OUVRIER) SOMMES_OR,
(SELECT O3.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O3 WHERE O3.es = 'e' GROUP BY O3.OUVRIER) SOMMES_IN,
(SELECT O4.OUVRIER, SUM(poids) AS SOMME FROM OPERATION O4 WHERE O4.es = 's' GROUP BY O4.OUVRIER) SOMMES_OUT
WHERE
O1.OUVRIER=SOMMES_OR.OUVRIER AND
O1.OUVRIER=SOMMES_IN.OUVRIER AND
O1.OUVRIER=SOMMES_OUT.OUVRIER;
Wha !
Merci infiniment, ça marche. Pas exactement comme je l'avais imaginé mais d'avoir ces 3 données sur un même résultat de requête c'est déjà bien.
En fait dans mon modèle relationnel, une opération appartient à un ouvrier (d'où le champs `ouvrier` qui est une clé étrangère).
J'en demande peut-être un peu trop mais dans l'idéal j'aimerais obtenir avec un regroupement par `ouvrier` ceci :
En gros, dans 3 colones différentes, un SUM avec une condition 1, un SUM avec une condition B et un SUM avec une condition C.
Si quelqu'un a une idée ce serait vraiment cool
Merci infiniment, ça marche. Pas exactement comme je l'avais imaginé mais d'avoir ces 3 données sur un même résultat de requête c'est déjà bien.
En fait dans mon modèle relationnel, une opération appartient à un ouvrier (d'où le champs `ouvrier` qui est une clé étrangère).
J'en demande peut-être un peu trop mais dans l'idéal j'aimerais obtenir avec un regroupement par `ouvrier` ceci :
______________________________________________ |Ouvrier | SUM entrées | SUM sorties | SUM or | _________|_____________|_____________|________| | 74 | 5610 | 5420 | 384 | _________|_____________|_____________|________| | 12 | 1780 | 1450 | 860 | _________|_____________|_____________|________| | 19 | 4320 | 3897 | 2786 | _________|_____________|_____________|________| | 24 | 940 | 935 | 23 | _________|_____________|_____________|________|
En gros, dans 3 colones différentes, un SUM avec une condition 1, un SUM avec une condition B et un SUM avec une condition C.
Si quelqu'un a une idée ce serait vraiment cool
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question