gpt4 book ai didi

sql - 查找具有特定值的最新记录

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

我想查找组中具有最新日期的行。但是,如果该行在特定列中具有某些特定值,那么我们必须完全消除该行对于下表中的Ex:

 ID   FK_ID    DateTiME     Value
1 1 2017-06-01 a
2 1 2017-06-02 a
3 2 2017-06-04 b
4 2 2017-06-03 a
5 2 2017-06-01 b
6 3 2017-01-01 c
7 3 2017-01-01 a

这里我想要输出为

FK_ID   DateTime 
1 2017-06-02
3 2017-01-01

我想按 FK_ID 进行分组,然后想要该组中的最大 DateTime 值。但是,如果组中选定的行的 Valueb 那么我们应该完全跳过该行并且不希望它出现在输出中。

例如,在上表(1)中,FK_ID 2 的 Max DateTime 行为

  3     2     2017-06-04    b

但是,由于该行的值为 b,我们不希望它出现在输出中。

最佳答案

使用行号

With CTE as
(
select t1.*, row_number() over (partition by FK_ID order by datetime desc) rn
from MyTable t1
)
select *
from CTE
where rn = 1
and value <> 'b'

关于sql - 查找具有特定值的最新记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44973542/

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