嗯,我试图让一个地方在同一列多次条款,即:MySQL - 如何使同一列上的where子句多于1?
product
----------------------------------------
| product_id | product_name | group_id |
----------------------------------------
group
-------------------------
| group_id | group_name |
-------------------------
group_val
-------------------------
| group_id | product_id |
-------------------------
select b.product_name
from group_val a
inner join product b using(product_id)
inner join group c using(group_id)
where a.group_id in(10,15,88)
group by b.product_id;
它一样or ... or
,但我需要做的是这样的:它只是将返回的产品,是对组10和组15和88组:我的意思是产品需要在这三组中。
即:
group_val
-------------------------
| group_id | product_id |
-------------------------
| 10 | 1 |
-------------------------
| 15 | 1 |
-------------------------
| 88 | 1 |
-------------------------
| 15 | 2 |
-------------------------
| 10 | 2 |
-------------------------
在这种情况下,它只会返回产品1
我该怎么办呢?
[你有什么尝试?](http://www.whathaveyoutried.com/)请参阅[问问建议](http://stackoverflow.com/questions/ask-advice)。 – 2013-03-23 21:23:02
使用SQL保留字作为表名或列名(在你的案例中* group *)是一个坏主意。 – grahamj42 2013-03-23 21:29:42
这只是一个例子; p – 2013-03-23 21:30:42