PHP怎么对比两个表的数据?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

比较表数据的sql语句:

(select * from EMP minus select *from EMP2)union (select * from EMP2 minus select * from EMP)

注意:前提是表结构一样,可以进行数据差异查询

得到下列结果:

结果:得到了两张结构相同表的差异数据

但是无法区分哪一行的数据,属于那张表,因此加上子查询,利用虚拟列名称,进行区分·,sql如下所示:

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

得到的查询结果,如下所示:

结果:增加了EMP行,加以区分;

最后使用php实现即可:

<?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)) { }?>

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。