php - 如何比较两个MySQL表并显示差异?

标签 php mysql

我们获得了用于填充 MySQL 数据库的每日提要。我想将新提要与之前的提要进行比较,以查看更改、添加甚至删除的内容。我在 MySQL 和 PHP 工作。如何在 MySQL 中最好地实现这一点?我认为它应该采用以前的提要(即 MySQL 表)并将其与也存储为 MySQL 表的新提要进行比较。但是我该怎么做才能检索那些在新 MySQL 表中找不到的行呢?谢谢!

最佳答案

这可能对您有帮助:

SELECT  a.*
FROM    `OLD_TABLE_NAME` a
WHERE   ROW(a.col1, a.col2, …) NOT IN
    (
    SELECT  *
    FROM    NEW_TABLE_NAME
    )
UNION ALL
SELECT  b.*
FROM    `NEW_TABLE_NAME` b
WHERE   ROW(b.col1, b.col2, …) NOT IN
    (
    SELECT  *
    FROM    OLD_TABLE_NAME
    )

尽情享受吧!

关于php - 如何比较两个MySQL表并显示差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15540400/

相关文章:

php - Google Analytics API V4 不适用于 GA4 帐户

php - mysql_query ("DELETE FROM table WHERE id-' $id'"); 失败

javascript - AJAX 提交和 500 服务器错误

mysql - 子查询对项目进行计数,然后按主查询的字段对它们进行分组,不重复

PHP oop 如何以更简单的方式调用另一个类方法?

php - 如何解码/膨胀分块的 gzip 字符串?

php - 使用复选框检查要删除的列

mysql - SQL 连接日期列匹配的 2 个表

php - 添加另一个参数时出现 HTTP 500 错误

php - 返回数组值作为 csv 的函数