我有这样的疑问,计数taht匹配网站= $网站的所有行:MySQL查询计数并检查匹配吗?
$count= mysql_query("SELECT COUNT(DISTINCT `Site`) FROM `Ratings` WHERE `Site` = '$site'");
上述查询得到的评分数量为$网站。但是我也需要知道用户是否已经对网站进行了评分。我使用的是用于此另算:
SELECT COUNT(*) FROM `Ratings` WHERE `Site` = '$site' AND `UID` = '$uid'"
是否有可能获得现场比赛的数量,并检查用户评为该网站在一个查询?谢谢
如果确实有可能在MySQL中“对飞” GROUP BY值在选择列表中,因为你是在这种情况下,与是/否列暗示,那么你的查询将返回2行,如果用户评分,则计数将会减1。如果无法做到这一点,将会产生错误。如何将一个聚合函数与一个查询中的单个行的评估结合起来? – cdonner
@cdonner如果省略GROUP BY子句,则相当于按所有行进行分组。 (直接从这个[mysql doc](http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html)。 我在我自己的表中的一个表上测试了我的查询,并且它返回一行两列,如上所述 –
@ cdonner7我只是在SELECT子句中添加了一些东西,所以它根本不会影响计数 –