gpt4 book ai didi

php - 如何按列对分组元素内部进行排序?

转载 作者:行者123 更新时间:2023-11-29 22:15:21 25 4
gpt4 key购买 nike

尝试订购此:

|    id    |    title    |    created_at    |

1 12:00
2 13:00
1 15:00
2 15:00
1 17:00
3 18:00
1 19:00
3 20:00

进入此:

3    20:00
3 18:00
1 19:00
1 17:00
1 15:00
1 12:00
2 15:00
2 13:00

这段代码完成了对 id 进行分组的工作:

select t.*
from table t join
(select t.id, max(created_at) as maxca
from table t
group by t.id
) tt
on t.id = tt.id
order by tt.maxca desc, id;

问题在于created_at以相反的顺序出现,如下所示:

3    18:00
3 20:00
1 12:00
1 15:00
1 18:00
1 19:00
2 13:00
2 15:00

如何反转每个分组 id block 内的created_at顺序?

最佳答案

只需向 order by 添加另一个键即可:

select t.*
from table t join
(select t.id, max(created_at) as maxca
from table t
group by t.id
) tt
on t.id = tt.id
order by tt.maxca desc, id, created_at desc;

关于php - 如何按列对分组元素内部进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31248369/

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