Ton code n'est pas trop facile à comprendre car dense mais je pense qu'en une seul requête tu aurais pu avoir ta réponse. Il faut faire une jointure avec de LEFT JOIN avec un clause sur les valeurs NULL.
Code :
- SELECT T1.* FROM maTable1 AS T1
- LEFT JOIN maTable2 AS T2
- ON T1.monChamp = T2.monChamp
- WHERE T2.monChamp IS NULL
|
Cette requête va te retourner toute les lignes de la table T1 qui n'ont pas de lien avec la table T2.
- Si à la place de LEFT tu places INNER et que tu retires la clause cela va te donner toute les lignes ayant des correspondance entre les deux tables T1 et T2.
- Si à la place du LEFT tu places RIGHT, dans la clause tu places T1.monChamp IS NULL la situation s'inverse par rapport au premier cas. Il va retourner toute les lignes qui dans T2 n'ayant pas de correspondance dans T1.
Code :
- SELECT T2.* FROM maTable1 AS T1
- RIGHT JOIN maTable2 AS T2
- ON T1.monChamp = T2.monChamp
- WHERE T1.monChamp IS NULL
|
Si c'est que tu souhaitais faire ce type de requête pourrait te réduire un certain nombre de ligne de code PHP.