|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Bonjour à tous,
Une des applications sur laquelle je travaille doit remplir une table en fonction de ce que contient une autre table. Je m'explique. Soit ma table: buildresult Code :
Code :
Pour être plus précis, le champ result de la table build doit être à true si plusieurs des entrées dans la table buildresult sont à true. Et à false si au moins une des entrées de la table buildresult est à false. Ma question: est il possible dans une requête SQL de tester la valeur pour la colonne de plusieurs entrée et en fonction de ce test, inserer une valeur dans une autre table. Je m'excuse par avance, j'ai du mal à exprimer clairement mes problématiques SQL... |
||||
|
|
00
|
|
|
#2 | ||
![]() ![]() |
Citation:
Citation:
Commence par construire une requête SELECT avec ça pour vérifier si le résultat retourné est bon puis mets le SELECT dans une requête INSERT.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
En fait, je dois récupérer tous les enregistrements de la table buildresult dont l'id_build est égal à l'id de l'enregistrement à modifier dans la table build.
Sur ces enregistrements, je dois vérifier les valeurs result et faire comme je l'ai dit dans mon premier message: mettre build.result à true si tous les buildresult.result sont à true, ou à false si au moins un des buildresult.result est false. |
|
|
00
|
|
|
#4 | ||
![]() ![]() |
Citation:
Citation:
Tu veux dire que si tu as au moins un buildresult.result à false dans l'ensemble des lignes de la table dont l'id est aussi dans la table build, tu vas mettre tous les build.result de ces lignes à false, sinon tous à true ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#5 | |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
pardon, je dois en fait faire un update...
Citation:
Pour cela il faut que je retrouve les entrées de la table buildresult qui sont reliées à l'entrée de la table build. Et le champ build.result dépendera de la combinaison des champs buildresult.result de l'ensemble des entrées récupérees (donc qui matchent l'entrée de la table build.) |
|
|
|
00
|
|
|
#6 | ||||||
![]() ![]() |
Je pense avoir compris...
Combien de result FALSE pour chaque id_buildresult ? Code :
Pour savoir quelles lignes sont à mettre à jour dans build, on fait une jointure avec la requête précédente : Code :
Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||||||
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Merci pour ton aide, ça fonctionne presque mais maintenant que tu m'as montré le chemin je souhaite chercher par moi même
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com