我有一個表merchandises
和merchandise_groups_merchandise
字段值。後面的表格是用於存儲哪些商品被選擇在哪個商品組中的中間表 - 多對多。從merchandises.id
到merchandise_groups_merchandise.merchandise_id
有關係。如何從一個表中選擇所有行,計算基於另一個表
我試圖把一個查詢產生以下結果,從merchandises
表中列出的所有商品和其中is_selected
是由merchandise_id是否在merchandise_groups_merchandise
表特定merchandise_group決定一個布爾值。並且,merchandise_groups_merchandise.group_id
由用戶指定。
我已經嘗試了LEFT JOIN,兩個表之間,當然,只有返回實際的商品那是在小組中間表。
我該怎麼做?
-------------------------------
|id |title |is_selected
---------------------------
|1 |Tree |1
|2 |Log |0
|3 |Toy |1
這是查詢的SQL,我試過:
PARAMETERS group_id Short;
SELECT IIf(IsNull([merchandise_groups_merchandise].[merchandise_id]),False,True) AS selected, merchandises.id, merchandises.title
FROM merchandises LEFT JOIN merchandise_groups_merchandise ON merchandises.id = merchandise_groups_merchandise.merchandise_id
WHERE (((merchandise_groups_merchandise.merchandise_group_id)=[group_id]));
你能提供的樣本數據和期望結果如何?你的解釋有點難以遵循。 –