寻找一种按三个条件对订单进行排序的方法。我可以毫无问题地得到其中两个。示例表:
Buyer Qty Item_ID
James 1 12345
Jack 1 34564
John 3 13445
Kevin 1 83243
Bill 2 23434
Jack 3 23423
所以这里的诀窍是先对买家进行分组,
然后是数量,然后是 item_id
Jack 有两个订单需要分组,然后拉到一起发货 其余订单需要按数量分组,然后按 item_ID 排序
输出如下:
Buyer Qty Item_ID
Jack 1 34564
Jack 3 23423
James 1 12345
Kevin 1 83243
Bill 2 23434
Bob 2 23444
John 3 13445
买家不需要排序,只需按数量、item_id 分隔的 Jacks 订单对多个订单进行分组。我们每天收到 100 个订单,来自同一买家的多个订单。具有相同数量商品的订单需要按 item_id 排序,以简化将库存从房间一端拉到另一端的过程。似乎将买家分组会起作用,但还没有弄清楚。
迄今为止最合理的查询:
select * FROM orders
WHERE printed = 0
AND status = 'completed'
AND address_name <> ''
group by buyer
ORDER BY qty, id;
此查询跳过来自同一买家的多个订单,并将其余订单正确排序。
我已经成功实施了答案 1,谢谢!