我正在寻找两个查询结果之间的差异。以下是我的疑问:
查询1:
SELECT
COUNT(*) AS Total
FROM
transaction
WHERE
last_local_call_time >= '2022-03-04 00:00:00'
AND last_local_call_time < '2022-03-05 00:00:00';
结果1:
Total
--------
213966
查询2:
SELECT
COUNT(*) AS Total
FROM
transaction
WHERE
modify_date >= '2022-03-04 00:00:00'
AND modify_date < '2022-03-05 00:00:00';
结果2:
Total
--------
877349
我想查找Query1-Quer2结果(不是行数,而是内容(。以下是我多次失败的尝试之一:
SELECT *
FROM transaction
WHERE VALUE IN (SELECT * FROM transaction WHERE modify_date >= '2022-03-04 00:00:00' AND modify_date < '2022-03-05 00:00:00';)
AND NOT IN (SELECT * FROM transaction WHERE last_local_call_time >= '2022-03-04 00:00:00' AND last_local_call_time < '2022-03-05 00:00:00';)
任何援助都会被提及。
使用包含第一个查询但不包含第二个查询的where子句:
SELECT *
FROM `transaction`
WHERE last_local_call_time >= '2022-03-04 00:00:00' AND
last_local_call_time < '2022-03-05 00:00:00' AND
(modify_date < '2022-03-04 00:00:00' OR
modify_date >= '2022-03-05 00:00:00');