Re: [SQL ] 组资料问题

楼主: cutekid (可爱小孩子)   2019-10-23 20:37:58
网址: http://sqlfiddle.com/#!9/920483/18
select *
from orders t1
inner join order_items t2 on t1.id = t2.order_id
inner join commodities t3 on t2.match_id = t3.id
inner join (
select t1.id,min(manufacture_time) as m_time
from orders t1
inner join order_items t2 on t1.id = t2.order_id
inner join commodities t3 on t2.match_id = t3.id
group by t1.id
) t4 on t1.id = t4.id
order by t4.m_time,t1.id
青色: 订单所对应最小的 manufacture_time,为排序条件
黄色: manufacture_time 相同的话,再以 order id 排序
※ 引述《MOONY135 (谈无欲)》之铭言:
: (针对 SQL 语言的问题,用这个标题。请用 Ctrl+Y 砍掉这行)
: 数据库名称:
: mysql
: 数据库版本:
: 5.7
: 内容/问题描述:
: 最近工作上遇到一个排序的问题 我个人是觉得把资料取出来之后再用linq之类的去排序
: 对写程式的人来说会比较简单 但如果要效能的话
: 可能就是要从db query出来就是正确的排序会比较好
: 不知道就大家工作上会是怎样处理呢
: 这是想要组出来的结果
: https://pastebin.com/3vyu2J1H
: 可能会有根据订单内容的manufacture_time对订单排序(想不到怎样做)
: 也有根据订单的create_at来排序(这比较简单)
: 以下是我的测资
: https://pastebin.com/FpMUVQCM

Links booklink

Contact Us: admin [ a t ] ucptt.com