gpt4 book ai didi

sql-server - 如何根据上次访问时间选择唯一行

转载 作者:行者123 更新时间:2023-12-04 06:13:10 26 4
gpt4 key购买 nike

我只想获得不同的行,它们各自 AnsId ,

像 Qid: 01 有最后一个 AnsId: 01

我有以下数据结构,

Qid  Time                  AnsId
01 2011-09-26 12:55:10 01
02 2011-09-26 12:58:32 03
03 2011-09-26 12:59:05 02
01 2011-09-26 01:02:10 01
03 2011-09-26 01:30:10 01
02 2011-09-26 01:59:10 02

我编写了以下查询,但它返回所有行:
SELECT DISTINCT Qid, Time, AnsId
FROM table
ORDER BY Time DESC

那么选择查询中缺少什么部分?

最佳答案

您可以使用 row_number()Qid 找到最后一个答案:

select  *
from (
select row_number() over (partition by Qid order by Time desc) as rn
, *
from YourTable
) as SubQueryAlias
where rn = 1

子查询是必需的,因为 SQL Server 不允许 row_number直接在 where .

关于sql-server - 如何根据上次访问时间选择唯一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7552506/

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