gpt4 book ai didi

sql - 获取最近的不同记录

转载 作者:行者123 更新时间:2023-12-02 06:38:37 25 4
gpt4 key购买 nike

考虑下表:

User  CreatedDateTime   Quantity----- ----------------- --------Jim   2012-09-19 01:00  1Jim   2012-09-19 02:00  5Jim   2012-09-19 03:00  2Bob   2012-09-19 02:00  2Bob   2012-09-19 03:00  9Bob   2012-09-19 05:00  1

什么查询会返回每个 User 的最新行(由 CreatedDateTime 定义),以便我们可以确定关联的 Quantity .

即以下记录

User  CreatedDateTime   Quantity----- ----------------- --------Jim   2012-09-19 03:00  2Bob   2012-09-19 05:00  1

我们认为我们可以简单地Group By UserCreatedDateTime 并添加一个Having MessageCreationDateTime = MAX(.MessageCreationDateTime。当然这不起作用,因为 QuantityGroup By 之后不可用。

最佳答案

由于您使用的是 SQL Server,因此可以使用 Window Function对此。

SELECT [User], CreatedDateTime, Quantity
FROM
(
SELECT [User], CreatedDateTime, Quantity,
ROW_NUMBER() OVER(PARTITION BY [User] ORDER BY CreatedDateTime DESC) as RowNum
FROM tableName
) a
WHERE a.RowNum = 1

SQLFiddle Demo

关于sql - 获取最近的不同记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12496857/

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