欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP比较两个表不同数据

程序员文章站 2022-04-27 13:25:17
...

PHP比较两个表不同数据

PHP比较两个表不同数据

比较表数据的sql语句:

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

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

得到下列结果:

PHP比较两个表不同数据

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

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

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

PHP比较两个表不同数据

结果:增加了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)) {   

}
?>

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

以上就是PHP比较两个表不同数据的详细内容,更多请关注其它相关文章!