0

我有以下详细的 MySQL 表。我正在尝试选择出现在多个给定过滤器 ID 中的任何产品。

例如

SELECT `product_id` FROM mytable WHERE (`filter_id`='100' AND `filter_id`='132');

我希望看到这个返回 'product_id=2' 但我很欣赏上述方法不起作用,因为 SQL 正在寻找 eq 100 AND 132 的一行。

我尝试过使用 UNION,但只返回过滤器 100 或 132 中的产品。有人可以引导我走向正确的方向吗?

这是我的表的示例:

product_id    filter_id
------------------------
1             100
2             132
2             100
3             132
3             92
4             92

有人也可以为这个主题建议一个更好的标题吗!

4

1 回答 1

0

select m1.product_id from mytable m1 inner join mytable m2 on (m1. filter_id='100' and m2. filter_id='132' and m1.product_id=m2.product_id )

于 2013-07-04T19:51:46.827 回答