gpt4 book ai didi

基于多个条件的 mySQL ORDER

转载 作者:行者123 更新时间:2023-11-29 02:10:36 25 4
gpt4 key购买 nike

我的实际表格比这更深入,但假设我有一个看起来像这样的表格......

Record_ID     Due_Date     Style
========= ========== =====
100 2018-01-01 10
101 2018-01-02 20
102 2018-01-03 12
103 2018-01-04 10
104 2018-01-05 20
105 2018-01-06 12
106 2018-01-02 10

我想要的是一个查询,它将确定第一个截止日期,然后返回该记录以及所有其他具有相同样式的记录,而不管截止日期如何。然后应该是另一种样式的下一个截止日期,然后继续进行。成功的输出将按此顺序......

Record_ID     Due_Date     Style
========= ========== =====
100 2018-01-01 10
106 2018-01-02 10
103 2018-01-04 10
101 2018-01-02 20
104 2018-01-05 20
102 2018-01-03 12
105 2018-01-06 12

如果您只查看每个 Style 的第一条记录,则输出是有序的。查看记录100,101,102

如果您查看给定 Style 的所有记录,输出将按日期排序。查看记录100,106,103

如果您只查看 Style 列,输出将包含所有类似的 Style,但不一定按数字顺序排列。

通过执行此输出,很容易看出第一个到期的是什么 Style,但同一 Style 中的所有记录都将在继续下一个之前完成样式

最佳答案

这是一个使用子查询的选项,该子查询创建一组具有相应 min(duedate) 的样式。然后您加入回到原始表并那个日期排序。

select *
from yourtable t join (
select min(duedate) minduedate, style
from yourtable
group by style) t2 on t.style = t2.style
order by t2.minduedate, t.duedate

关于基于多个条件的 mySQL ORDER,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53749700/

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