例如,我有一个车间订单数据库和两个表 - ORDERS和ORDERSTATUS。通过GROUP BY连接两个SQL表并未实现预期的结果
Table : orders
--------------------------------------------
OrderID | OrderItems | AddedTimeStamp |
--------------------------------------------
1 | Apples | 2009-12-22 13:15:18 |
--------------------------------------------
2 | Bananas | 2009-12-22 14:15:24 |
--------------------------------------------
Table : orderstatus
--------------------------------------------------------------------
StatusID | OrderID | Status | AssignedUser | StatusTimestamp |
--------------------------------------------------------------------
1 | 1 | Received | JohnSmith | 2009-12-22 14:15:24 |
--------------------------------------------------------------------
2 | 2 | Received | MaryJane | 2009-12-22 14:15:24 |
--------------------------------------------------------------------
3 | 1 | Process | JohnSmith | 2009-12-22 14:15:24 |
--------------------------------------------------------------------
4 | 2 | Process | MaryJane | 2009-12-22 14:15:24 |
--------------------------------------------------------------------
5 | 2 | Deliver | MaryJane | 2009-12-22 14:15:24 |
--------------------------------------------------------------------
我运行这个SQL查询:
SELECT od.orderid, od.orderitems, os.status, os.assigneduser
FROM orders AS od INNER JOIN orderstatus AS os
ON od.orderid = os.orderid
GROUP BY os.orderid
ORDER BY os.orderid ASC
这将返回我:
------------------------------------------------
OrderID | OrderItems | Status | AssignedUser |
------------------------------------------------
1 | Apples | Received | JohnSmith |
------------------------------------------------
2 | Bananas | Received | MaryJane |
------------------------------------------------
我想的是:
------------------------------------------------
OrderID | OrderItems | Status | AssignedUser |
------------------------------------------------
1 | Apples | Process | JohnSmith |
------------------------------------------------
2 | Bananas | Deliver | MaryJane |
------------------------------------------------
我很新到MySQL的查询,但我一直在抨击我的头4小时 - 有人可以帮忙吗? TIA。
编辑:基本目标是我想说明的订单最新状态。
数据库应该如何知道Delivered> Processed> Received? – Joe 2009-12-23 05:12:20
Woops抱歉,我忙于格式化表格,以至于我没有意识到我想要的标准......编辑我的问题以进一步澄清。 – scoopdreams 2009-12-23 06:25:42