comparaison de tables en vue de faire un historique - PHP - Programmation
Marsh Posté le 02-02-2006 à 11:25:52
Tu sais que tu peux demander directement à mysql de faire la comparaison pour toi?
ne seraisse qu'un "select table1.champ1,table2.champn from table1,table2 where table1.id=table2.id and table1.champ1<>table2.champn"
Et tu peux même améliorer ça en faisant faire l'insertion des données dans la table d'historique directement par mysql : requette de type "insert into ..... select ...".
Marsh Posté le 02-02-2006 à 11:41:40
ouaaaah!!
ça c'est une bonne nouvelle!
bon la requete sql que tu as écrit ne me parait pas claire, mais c'est normal vu mon niveau...
mais c'est déjà une bonne nouvelle!
donc si je comprends :
table1.champ1 correspond au champ1 de la table1
table2.champn correspond au champn de la table 2
c'est le <> que yé né comprrends pas...
je vais me renseigner
merci omega2!!
Marsh Posté le 02-02-2006 à 11:45:02
"<>" = contenu différent
C'est comme si tu faisais un
"not (table1.champ1 = table2.champn)"
Marsh Posté le 02-02-2006 à 12:33:20
ok!!
merci!!
je vais essayer ça plus tard c la bourre en ce moment.
en tous les cas c'est une super piste
à plus!
Marsh Posté le 02-02-2006 à 09:57:36
Salut à tous!
Je voulais avoir votre avis sur la construction d'un historique, qui nécessite une comparaison de table.
Novice en PHP, j'essaie d'avoir le raisonnement, mais c'est pas forcément évident. Si vous le voulez bien je vais vous soumettre une idée dans ce cas précis et j'aimerai recueillir vos avis et/ou vos conseils merci!
voilà : j'ai trois tables dans ma base de données : une tp_edtion, une tp_historique et une tp_fdv. Tp_fdv et tp_edition possèdent une trentaine de champs en commun (on va réduire à 5 ici sinon on a pas fini!).
le but est : si le contenu des champs en commun est différent alors inscrit dans une la table historique le champs différent issu de la table tp_fdv.
bon j'essaye de taper les requetes correspondantes :
en gros voilà comment je vois les choses. Enfin le problème se pose alors :
y'a un problème de comparaison, je pense.
La logique doit m'échapper un peu...
il faudrait comparer les données id par id...mais des id y'en a 8000 dans mes tables!!
vous voyez le problème?
qu'en pensez-vous?
merci du coup de main!!
Message édité par flock86 le 02-02-2006 à 09:58:10