gpt4 book ai didi

mysql : Get relative complement from two tables that updated one day before

转载 作者:行者123 更新时间:2023-11-29 19:10:31 27 4
gpt4 key购买 nike

我有两个表,我将其称为 A 和 B,两个表都有相似的数据,但在不同的字段中。我试图从A表中获取数据,它应该不存在于B表中,但有一个条件。有一个时间戳字段表示人们何时更新此数据,而我必须在昨天更新数据。我知道如何使用子查询获得相对补集,但是如果我使用子查询,我无法将条件设置为过滤时间戳。有没有办法在给定时间条件的情况下得到相对补足?

这是数据库A数据库B

 ID  |   timestamp              |    ID  |   timestamp              |
-------------------------------- --------------------------------
1 | 2017-01-01 00:00:00 | 1 | 2017-01-01 00:00:00 |
2 | 2017-01-04 00:00:00 | 8 | 2017-01-04 00:00:00 |
3 | 2017-01-11 00:00:00 | 9 | 2017-01-11 00:00:00 |
4 | 2017-01-14 00:00:00 | 4 | 2017-01-14 00:00:00 |
5 | 2017-01-07 00:00:00 | 5 | 2017-01-07 00:00:00 |

这是我尝试过的查询。

SELECT a.id FROM a as a
WHERE a.id not in (SELECT b.a_id FROM b as b) AND a.timestamp IS NOT NULL;

这是我愿意给出的条件

where timestamp >= date_add(now(), interval -1 day)  

最佳答案

假设您的时间戳字段中实际上有一个日期,其值等于或大于今天,您的查询应该可以正常工作。以下是您可以使用的两个不同的查询。

select a.*
from your_schema.your_table a
left join your_schema.your_table_2 b
on b.id = a.id
where a.id > 0
and b.id is null
and a.checktime >= date_sub(now(), interval 1 day);

select *
from your_schema.your_table
where id not in (select id
from your_schema.your_table_2)
and checktime >= date_sub(now(), interval 1 day);

关于mysql : Get relative complement from two tables that updated one day before,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43118251/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com