※ 引述《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
: 不過這樣要用程式分開來取條件,不知是否還有其它的關聯法呢?
推 shadow0828: 資質不夠... 看不太懂,有辦法敘述想要的結果嗎 08/04 20:07
就比如說有一個要從主機板規格來挑主機板的頁面
我想在點USB3.0跟HDMI兩個選項後,列出所有同時具有這兩個介面的主機板
(資料庫的架構如上述,主機板一張表,介面一張表,關聯一張表)_
另外在進到這個產品A的頁面後,列出其它也是同樣俱有這兩個介面的產品。
前者是要做符合條件聯集的飾選(同時有USB3.0,HDMI)
後著我是想做兩著條件集合完全相符的關聯
(跟產品A一樣都有USB3.0和HDMI的所有產品)