我必须建立数据库表:“用户”和“结果”。我想从表用户浏览用户,并在表结果中计算每个用户的特定记录(计算玩过的游戏和赢过的游戏)。我的问题:
$q = "SELECT *, (SELECT count(*)
FROM users, results
WHERE (results.u1 = users.id OR results.u2 = users.id)
AND (results.p1 > 0 OR results.p2 > 0)
AND gid = '$gid' AND users.gender = '$gender') as gp
FROM users LEFT JOIN results
ON users.id = results.u1
||
users.id = results.u2
WHERE gid = '$gid' AND users.gender = '$gender'
GROUP BY users.id LIMIT 0, 9";
这确实返回了9个用户,但是“gp”显示了所有记录的计数,但是我希望gp part只计算循环中每个用户的记录,并按其排序。
你能帮我回答这个问题吗?谢谢您!
1条答案
按热度按时间v8wbuo2f1#
选择用户id并创建其别名,然后在子查询中使用它