选择表中有一个条目的用户,条目的类型为=" 402"

时间:2015-03-19 09:23:29

标签: mysql

我有下表,其中用户有0个或更多请求。每个请求都有一种类型。

id
user_id
type

我想要做的是让只有一个请求的用户,并且请求的类型为" 402"。 例如,如果用户有一个" 402"和一个" 403",我不想选择他。

我已经尝试了

SELECT * FROM table GROUP BY type HAVING COUNT(type) = 1 AND type = "402"

但它没有用(我从有多个请求的用户那里得到了结果,但只有一个" 402",就像我上面的例子一样)。

任何猜测? ;)

2 个答案:

答案 0 :(得分:2)

试试这个:

SELECT * FROM table where type = '402' 
GROUP BY type HAVING COUNT(type) = 1 

答案 1 :(得分:0)

你可以这样做

select t1.* from table t1 where t1.type = '402'
and not exists(
 select 1 from table t2 
 where t2.user_id = t1.user_id
 and t2.type <> '402'
)