php对比两张数据表,【后端开发】PHP比较两个表不同数据

本文介绍了如何通过SQL语句在PHP中比较两个具有相同结构的MySQL表中的差异数据。首先,展示了用于查找两个表不同数据的SQL查询,然后通过在查询中添加虚拟列来区分数据来源。接着,提供了PHP连接数据库并执行SQL查询的示例代码,从而获取并展示两个表的差异数据。这种方法有助于理解表间数据的异同。
摘要由CSDN通过智能技术生成

d32b8c7435468525b205b6a4fe3448e3.png

PHP比较两个表不同数据

比较表数据的sql语句:

(select *

from EMP

minus

select *from EMP2)

union

(select *

from EMP2

minus

select * from EMP)

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

得到下列结果:

8173f5fa4fc88bfa13dddf528f5b9ceb.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

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

cddf1da603f59265ac6947af0380b792.png

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

最后使用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中文网!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值