Join
無法為子查詢添加限制
這是我的第一個問題,請多多包涵。我有以下表格
物品
id name description
itemPurchaseDetail
id item_id(FK) branch_id(FK) purchaseRate date
庫存
id item_id(FK) branch_id(FK) quantity
我必須獲取特定分支中的所有項目(假設 branch_id=1)、庫存數量、名稱、描述和最後購買率。這個大膽的部分讓我很頭疼。
連結到小提琴: 小提琴
select i.id, i.name, i.description, s.quantity stock, (select purchaseRate from itemPurchaseDetail where item_id = i.id order by PurchaseDate desc limit 1) lastPurchaseRate from item i join (select distinct item_id, branch_id from itemPurchaseDetail) pd on pd.item_id = i.id join stock s on s.item_id = i.id and s.branch_id = pd.branch_id;
編號 | 姓名 | 描述 | 庫存| 最後購買率 -: | :---- | :---------- | ----: | ---------------: 1 | 項目1 | 描述 1 | 100 | 222 2 | 項目2 | 描述 2 | 200 | 444 3 | 項目3 | 描述 3 | 300 | 666
dbfiddle在這裡