gpt4 book ai didi

sql - 按时间顺序排序 Postgresql 表结果

转载 作者:行者123 更新时间:2023-11-29 12:04:42 32 4
gpt4 key购买 nike

我有以下 Postgresql 查询:

SELECT 
to_char("Date", 'Mon') AS mon,
extract(year from "Date") AS yyyy,
SUM("Amount") FILTER (WHERE "Type" LIKE 'E0%') AS HTT,
SUM("Amount") FILTER (WHERE "Type" LIKE 'E1%') AS TTT
FROM
"Transactions"
WHERE
"Date" BETWEEN '01/01/2015' AND '08/31/2015'
GROUP BY 1, 2
ORDER BY
yyyy,
mon;

我得到的结果按以下顺序排列:

Mon | yyyy | HTT | TTT |
Apr | 2014 | 50 | 75 |
Aug | 2014 | 60 | 80 |
Dec | 2014 | 55 | 40 |
Jul | 2014 | 60 | 45 |
Jun | 2014 | 50 | 55 |

但是,我希望能够按月和年的时间日期顺序得到结果,这样结果显示如下:

Mon | yyyy | HTT | TTT |
Apr | 2014 | 50 | 75 |
Jun | 2014 | 50 | 55 |
Jul | 2014 | 60 | 45 |
Aug | 2014 | 60 | 80 |
Dec | 2014 | 55 | 40 |

有没有一种查询方式,让Mon和yyyy按照时间的mon和year的顺序显示?

最佳答案

你有一个group by,所以最简单的方法是在每个组中按日期排序:

order by min("Date")

关于sql - 按时间顺序排序 Postgresql 表结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32807464/

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