看板 Database 關於我們 聯絡資訊
試試看這個 SELECT GOODS_ID FROM ( SELECT GOODS_ID,GROUP_CONCAT(PROP_ID) AS PROP_ID FROM GOODS_IDS_PROP_ID GROUP BY GOODS_ID ) AS A WHERE PROP_ID IN ( SELECT GROUP_CONCAT(PROP_ID) FROM GOODS_IDS_PROP_ID WHERE GOODS_ID = 1 GROUP BY GOODS_ID ) ※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言: : 抱歉不知道標題要如何下,DB是MYSQL。 : 假設有個table是商品,另一個是屬性的關聯表 : table:goods table:prop : goods_id name prop_id name : 1 商品A 1 USB3.0 : 2 商品B 2 HDMI : 3 商品C : table:goods_prop : goods_id prop_id : 1 1 : 1 2 : 2 1 : 3 1 : 3 2 : 我想要透過同時具有USB3跟HDMI的條件來飾選 : 或是選商品A時,列出屬性"完全一樣"的商品 : 我用的方法是 : SELECT `goods_id` : FROM `goods_pro` : WHERE `prop_id` IN (1,2) : HAVING count(`goods_id`) >= 2 : 不過這樣要用程式分開來取條件,不知是否還有其它的關聯法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.218.22.213 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1438708804.A.143.html
JYHuang: 感謝,不過好像取group concat出來再用PHP組合會好些? 08/05 13:25
lbeeon: 這只是參考 如果有啟發你的想法更好xd 記得feedback 08/05 17:18