首页 >后端开发 >PHP问题 >PHP比较两个表不同数据

PHP比较两个表不同数据

angryTom
angryTom原创
2019-10-31 16:02:583542浏览

PHP比较两个表不同数据

PHP比较两个表不同数据    

比较表数据的sql语句:

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

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

得到下列结果:

1.png

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

但是无法区分哪一行的数据,属于那张表,因此加上子查询,利用虚拟列名称,进行区分·,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

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

2.jpg

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

最后使用php实现即可:

<?php
$serve = &#39;localhost:3306&#39;;
$username = &#39;root&#39;;
$password = &#39;admin123&#39;;
$dbname = &#39;examples&#39;;
$link = mysqli_connect($serve,$username,$password,$dbname);
mysqli_set_charset($link,&#39;UTF-8&#39;); // 设置数据库字符集
$result = mysqli_query($link,"select a.*,&#39;EMP&#39; from (select * from EMP minus select * FROM EMP2) a union select b.*,&#39;EMP2&#39; from (select * from EMP2 minus select * FROM EMP) b");
while ($row = mysqli_fetch_assoc($result)) {   

}
?>

更多PHP相关知识,请访问PHP中文网

以上是PHP比较两个表不同数据的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn