我需要所有产品的列表,其中包含 2 列,其中包含产品首次订购的日期和该产品的订购数量。
结构:
tbl_product
- productID
- productName
tbl_orderProduct
- orderProductID
- orderID
- productID
- 数量
tbl_order
- orderID
- orderedDate
SELECT p.productName, firstOrder.orderedDate FROM tbl_product p
LEFT JOIN(
SELECT op.productID, MIN(o.orderedDate) AS orderedDate FROM tbl_orderProduct op
JOIN tbl_order o ON op.orderID = o.orderID
GROUP BY op.productID
)
firstOrder ON firstOrder.productID = p.productID
到目前为止,我第一次尝试检索日期有效,但我无法弄清楚如何获取数量,因为我必须获取订单,然后返回 tbl_orderProduct 获取数量。
我不想通过 firstOrder.ordererdDate 通过 select 获取订单,因为它有可能不是唯一的。
此外,我无法通过“左连接”中的选择传递 orderID,因为我还必须将其添加到“分组依据”中,并且它会为包含该产品的每个订单返回一行。所以我必须以某种方式从第一个订单中检索 orderID 或 orderProductID。
提前致谢!