gpt4 book ai didi

如果项目的最后一个条目满足条件,则仅选择行的 SQL 查询

转载 作者:行者123 更新时间:2023-12-02 08:25:57 24 4
gpt4 key购买 nike

我正在 SQL 中查找以下查询 - 即从表中选择 ID,其中条目在“最后一小时”内并且最后 checkin 值为“false”。

示例数据“Table1”:

ID(int), Check-In(boolean), Name(nvarchar), Entry(DateTime)*, PersonID(int)
*DateTime Format: DD/MM/YYYY HH:MM:SS

1, true, Klaus, 14/05/2015 15:45:21, 100
2, true, Klaus, 14/05/2015 16:05:22, 100
3, false, Klaus, 14/05/2015 16:06:04, 100
4, true, Pete, 14/05/2015 16:20:33, 101
5, false, Michelle, 14/05/2015 16:24:22, 105
6, true, Pete, 14/05/2015 16:25:55, 101
7, false, Pete, 14/05/2015 16:28:44, 101
8, true, Pete, 14/05/2015 16:29:36, 101

查询结果:

从表 1 中选择 ID,其中 time = last_hour 并且(LAST)Check-In 为 false'

= 3和5(不要选7)

在上面的示例中,我不想选择 ID 7,因为 Pete 的最后一次签到是真的(ID 8)。

有什么想法可以通过 SQL 查询实现吗?这可以通过简单的查询实现吗?

最佳答案

为确保last checkin 为false,您必须检查表中是否没有更新的行。

您可以使用“不存在”子句来做到这一点。

试试这个:

    select * from table1 t1
where entry > DATE_SUB(NOW(), INTERVAL 1 HOUR)
and checkin = false
and not exists (
select * from table1 t2
where t2.name = t1.name
and t2.entry > t1.entry)

关于如果项目的最后一个条目满足条件,则仅选择行的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32171824/

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