Mysql données croisées
Ulrich7
-
caphar Messages postés 50 Date d'inscription Statut Membre Dernière intervention -
caphar Messages postés 50 Date d'inscription Statut Membre Dernière intervention -
Bonjour, voilà mon problème :
J'ai deux tables, la première "escargot" contient les colonnes "points" et "argent", la seconde "serre" contient la colonne "fraisier". Je souhaite UPDATER points et argent de toutes les entrées DONT LA VALEUR "fraisier" est de 1.
Donc mon code :
sauf que fraisier ne fait pas partit de la même table, comment faut-il faire ?
Merci d'avance.
J'ai deux tables, la première "escargot" contient les colonnes "points" et "argent", la seconde "serre" contient la colonne "fraisier". Je souhaite UPDATER points et argent de toutes les entrées DONT LA VALEUR "fraisier" est de 1.
Donc mon code :
<?php $ok = 1; mysql_query('update escargot set argent=argent+10, points=points+5 where fraisier="'.$ok.'"'); ?>
sauf que fraisier ne fait pas partit de la même table, comment faut-il faire ?
Merci d'avance.
A voir également:
- Mysql données croisées
- Fuite données maif - Guide
- Supprimer les données de navigation - Guide
- Trier des données excel - Guide
- Mysql community server - Télécharger - Bases de données
- Sauvegarde des données - Guide
1 réponse
Bienvenue dans le monde des jointures de tables !
Il faut créer une relation entre tes tables, par exemple si chaque escargot est obligatoirement relié à une serre, tu dois attribuer un identifiant (id, généralement un INT auto-increment) à chaque serre et ajouter une colonne serre_id (INT) dans ta table escargot, contenant le numéro d'identifiant de sa serre
Ensuite, si tu utilises MySQL 5, tu peux faire un UPDATE multi-table, ça donne à peu près ça (à adapter à tes noms de colonnes) :
Il faut créer une relation entre tes tables, par exemple si chaque escargot est obligatoirement relié à une serre, tu dois attribuer un identifiant (id, généralement un INT auto-increment) à chaque serre et ajouter une colonne serre_id (INT) dans ta table escargot, contenant le numéro d'identifiant de sa serre
Ensuite, si tu utilises MySQL 5, tu peux faire un UPDATE multi-table, ça donne à peu près ça (à adapter à tes noms de colonnes) :
UPDATE escargot, serre SET escargot.argent=escargot.argent+10, escargot.points=escargot.points+5 WHERE serre.fraisier= "' . mysql_real_escape($ok) . '"' AND serre.id = escargot.serre_id