php - 比较同一个表中两个查询集结果的行

标签 php mysql

我有一个表格,根据日期存储数据。

现在我需要检查:两个不同日期的行数据之间是否存在差异。

用一种简单的方式,你可以说我有两个查询从同一个表中选择数据,现在我必须比较每一行和列的值。例如我的两个查询是 -

SELECT *  FROM `national` WHERE `upload_date` = '2015-08-04'  // return 106 rows

SELECT *  FROM `national` WHERE `upload_date` = '2015-08-01'   // return 106 rows

我尝试将其与下面的查询进行比较,但结果对我来说似乎不正确,我对此不满意。

Select U.* from 
(SELECT t1.* FROM `national` t1 where upload_date = '2015-08-01'
union all
SELECT t2.*  FROM `national` t2 WHERE `upload_date` = '2015-08-04' ) U
GROUP BY emp_id, uqi_id
HAVING COUNT(*) = 1

任何人都可以向我提供正确的查询吗?谢谢

最佳答案

试试这个

 (
  SELECT t1.* 
  FROM 
     `national` t1, `national` t2 
  where
      t1.upload_date = '2015-08-01' and t2.upload_date='2015-08-04' and
      -- put your columns here that you want to compare for same DATA
      -- like t1.name=t2.name and etc...
 ) 

关于php - 比较同一个表中两个查询集结果的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31871342/

相关文章:

php - 使用 PHP 编码(相对)URL 的正确方法

javascript - 如何安全地保存客户端的状态?

java - 关于使用 openJPA MySQL 进行运行时优化的异常

mySQL 从所有者历史记录中加入事务所有者

php - MySQL/MariaDB 是否对 PHP (7.x) mysqli_connect 的数据库密码进行哈希处理?

php - Laravel 使用 PHP 链表实现 SplDoublyLinkedList();

php - 在 php 中的可用性计算逻辑

php - 带有 PHP 变量的 css 样式表中的动态链接

php - 如何在 PHP 中复制 MySQL 的 aes-256-cbc

php - Doctrine 2 orm :schema-tool:update drops column