gpt4 book ai didi

php - 仅选择新的、不重复的值

转载 作者:行者123 更新时间:2023-11-30 00:29:09 26 4
gpt4 key购买 nike

我有一个客户端信息表,我需要从中提取不同的状态,但仅限于时间戳比上次检查更新的情况。不同的值也需要与所有旧的检查不同。

表:

Name         City            State           created_at
Dan Springfield Ohio 2014-03-25 17:44:19.000000
Jon Philadelphia Pennsylvania 2014-03-25 17:44:19.000000
Sue Hollywood California 2014-03-25 17:44:19.000000
Ann Oxford Ohio 2014-03-25 19:44:19.000000
Al Chicago Illinois 2014-03-25 19:44:19.000000

假设我已经检查过一次并找到了俄亥俄州、宾夕法尼亚州和加利福尼亚州。然后添加了两个新条目。下次运行检查时,我只需要找到伊利诺伊州,而不是俄亥俄州。

我试过这个,

SELECT State, created_at FROM (SELECT DISTINCT State, created_at FROM clients) as temp WHERE created_at > '2014-03-25 17:44:19.000000' ORDER BY State ASC 

运行此程序后,我意识到我的思维过程是错误的,因为我仍然得到重复项。

我认为我需要的是,查找所有新条目

Select State FROM clients WHERE created_at > '2014-03-25 17:44:19.000000'

然后根据该结果,

从结果中选择状态,其中状态不在(客户端 WHERE create_at < '2014-03-25 17:44:19.000000')

但我不知道该怎么做。

感谢您的帮助。

最佳答案

如果自上次检查后创建了某些内容,则 min(created_at) 是在上次检查日期之后。因此,以下内容应该满足您的要求:

select c.state
from clients c
group by state
having min(created_at) >= @yourlastcheck;

关于php - 仅选择新的、不重复的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22649497/

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