Bonjour,
J'ai un problème qui se pose à moi et j'aimerais savoir s'il est possible de le régler en MySQL.
Mon problème :
J'ai deux tables distinctes qui se composent comme suit :
table A :
id (int)
nom (varchar)
information (varchar)
table B :
valeur (varchar)
actif (bool)
Dans ma table A, dans la colonne information, j'ai des listes de valeurs provenant de la table B. Ces valeurs sont séparées par des virgules.
EX :
table B :
valeur | actif
___________
AAA | 1
BAA | 1
BBA | 0
BBB | 1
BCA | 1
table A
id | nom |*information
____________________
1 | nom 1 | AAA,BBB
2 | nom 2 | BBA,AAA,BAA,BBB
3 | nom 3 | BBA
4 | nom 4 | BBB,BAA,AAA,BCA
Je voudrais vérifier que les valeurs enregistrées dans la table B colonne information soient bien toutes des valeurs qui se trouvent dans la table A et que ces dernières soient toutes actives.
Actuellement, je boucle sur mes enregistrements de la table A puis en PHP je découpe la chaine "information" et je teste la présence dans la table B.
Est-il possible de le faire en MySQL afin de tester si cela optimiserait mon traitement.
Pour informations, mes tables comportent :
Table A : environ 500 000 enregistrements.
Table B : environ 7000 enregistrements.
Partager