【发布时间】:2018-10-08 08:07:47
【问题描述】:
我有一个表(表顺序),外键索引到同一个表,每个订单都有很多其他订单:
order
----------
id_order
state
id_source
id_source 是同一张表中 id_order 引用的外键
我想选择按顺序状态及其顺序排序的所有行。
我试过这段代码,但它没有给我想要的。
select * from order o left join order o2 ON(o.id_order = o2.id_source)
order by o.state , o2.state asc ;
例如:
id_order | state | id_source
-----------------------------------
1 | 1 | null
-----------------------------------
2 | 2 | null
-----------------------------------
3 | 3 | null
-----------------------------------
4 | 1 | 3
我想要的结果
id_order | state | id_source
-----------------------------------
1 | 1 | null
-----------------------------------
3 | 3 | null
-----------------------------------
4 | 1 | 3
-----------------------------------
2 | 2 | null
【问题讨论】:
-
提供您的预期输出
-
请显示两个表的示例数据以及您期望的输出。
-
请检查我更新的问题。谢谢
-
如果我错了请纠正我但你想要的结果似乎没有任何顺序
-
我想按状态订购 id_source 为空的主要订单,如果他们有订单,订单会随着孩子的状态而变化
标签: php mysql sql-order-by