Maison > Article > développement back-end > PHP compare différentes données de deux tables
PHP compare différentes données dans deux tables
Instruction SQL pour comparer les données de la table :
(select * from EMP minus select *from EMP2) union (select * from EMP2 minus select * from EMP)
Remarque : Le principe est que la structure de la table est la même, vous pouvez effectuer une requête de différence de données
et obtenir les résultats suivants :
Résultat : Obtenir la différence entre deux tables avec la même structure Data
Mais il est impossible de distinguer quelle ligne de données appartient à quelle table, donc une sous-requête est ajoutée et le nom de la colonne virtuelle est utilisé pour distinguer·, le sql est comme suit :
select a.*,'EMP' from (select * from EMP minus select * FROM EMP2) a union select b.*,'EMP2' from (select * from EMP2 minus select * FROM EMP) b
La requête obtenue Le résultat est le suivant :
Résultat : la ligne EMP est ajoutée pour distinguer
Enfin, utilisez php pour l'implémenter :
<?php $serve = 'localhost:3306'; $username = 'root'; $password = 'admin123'; $dbname = 'examples'; $link = mysqli_connect($serve,$username,$password,$dbname); mysqli_set_charset($link,'UTF-8'); // 设置数据库字符集 $result = mysqli_query($link,"select a.*,'EMP' from (select * from EMP minus select * FROM EMP2) a union select b.*,'EMP2' from (select * from EMP2 minus select * FROM EMP) b"); while ($row = mysqli_fetch_assoc($result)) { } ?>
Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!