gpt4 book ai didi

Sqlite 按日期分组获取该日期的最新行值

转载 作者:行者123 更新时间:2023-12-04 16:10:18 29 4
gpt4 key购买 nike

让我们以这个选择为例:

Select date, sum(field1), max(field2)
from table
group by date
order by date

我们还假设在我的表中每个日期都有 2-3 行,所以:

|   date   | field1 | field2  | 
-------------------------------
|01-01-2017| 4 | 34 |
|01-01-2017| 5 | 37 |
|01-01-2017| 3 | 33 |
|01-02-2017| 15 | 41 |
|01-02-2017| 13 | 39 |

我上面的选择将返回

|   date   | field1 | field2  | 
|01-01-2017| 12 | 37 |
|01-02-2017| 28 | 41 |

我希望每个日期都为 field2 获取最后插入的值,所以第一次约会 33 次,第二次约会 39 次。

获得结果的任何简单方法?简单地删除 field2 的 max 是否有效并且查询将采用最后一个值?如果重要的话,我会在 Android 上使用 Sqlite。

LE: 表也有 id 自增字段作为主键。

最佳答案

RDBMS 中的表是一组无序的行。您必须定义“最新”行的含义。

假设您的表中有一个自动递增的 id 列,您可以根据该列决定“最新”行(即具有最大 id 的行):

select date,
sum(field1),
(
select field2
from your_table t2
where t.date = t2.date
order by id desc limit 1
) as field2
from table t
group by date
order by date

关于Sqlite 按日期分组获取该日期的最新行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43294466/

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