我在下表中搜索大小2.但是在返回结果后,我得到两行,产品ID为1,2。因为产品ID 1,2包含大小2.但是ID为2的产品也包含其他尺寸。那是3和5.我只期待2号。
所以我想要的是最终结果只包含一行作为产品ID 1.因为我只搜索尺寸2.
那我该怎么做呢。
答案 0 :(得分:1)
经过深入研究后,我得到了解决方案 试试这个问题: -
SELECT * FROM `product`
where size in ('2','3','5') and
product_id not in (select product_id FROM `product` where size not in ('2','3','5'))
代替('2','3','5')
,你必须像这样传递你的ids
根据您的数据,此查询将生成输出
我会帮助你。
答案 1 :(得分:0)
您可以使用select *
from vendor_allocation as va, district as d, vendor as v
where va.district_id = d.id and va.vendor_id = v.id
和group by
:
having