我想运行一个查询来显示给定的poll_id是否有一个或多个user_id。
示例1:poll_id 1106对其所有行只有user_id 1。
示例2:poll_id 1106的所有行都有多个user_id 1。
使用下面给出的示例,这个PHP代码可以工作:
$sql = "
SELECT 1
FROM xf_poll_vote
WHERE poll_id='1106'
having count(distinct user_id) > 1";
// execute SQL query and get result
$sql_result = mysql_query($sql,$connection);
// format results by row
while ($row = mysql_fetch_array($sql_result)) {
$user_id[] = $row["user_id"];
}
$count = count($user_id);
echo $count;
答案 0 :(得分:3)
我认为只是一个COUNT / DISTINCT。
SELECT poll_id, CASE WHEN COUNT(DISTINCT user_id) > 1 THEN 'Many' ELSE 'One' END AS ManyOrOne
FROM SomeTable
GROUP BY poll_id
答案 1 :(得分:1)
select 1
from yourTable
where poll_id = @yourPoll_id
having count(distinct user_id) > 1
如果返回任何内容,则poll_id有多个用户。如果没有,只有一个或零个用户