gpt4 book ai didi

sql - 从表中选择日期分为两列

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

我有一个表,其中一个字段是日期字段。

我被要求编写一个查询,该查询返回 A 列中的不同日期(已排序)列表,然后有另一列(例如日期 B),其中 B 列中的日期是小于列的最大日期答:

    MyDateField

2017-01-01
2017-01-01
2017-01-01
2017-01-02
2017-01-02
2017-01-03
2017-01-04
2017-01-05
2017-01-05
2017-01-05

需要回答

    2017-01-05      2017-01-04
2017-01-04 2017-01-03
2017-01-03 2017-01-02
2017-01-02 2017-01-01
2017-01-01

最佳答案

如果您使用的是 SQL-Server 2012+,则可以使用 LAG() 从表中获取最后一个最大日期:

SELECT t.date,
LAG(t.date,1) OVER(ORDER BY t.date) as last_biggest_date
FROM (SELECT DISTINCT s.dateField FROM YourTable s) t

关于sql - 从表中选择日期分为两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45717487/

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