算作查询的一部分

时间:2013-01-25 02:07:41

标签: php mysql count

如果我有一个用户表和一个问题表,其中一个用户可以有多个问题,我可以返回,例如,

bob | 10 questions
sam | 2 questions

一个查询?

将php与pdo一起用于它的价值。

users table

userID
name
etc.

questions table

questionID
userID
question
flagged
answered
etc.

我想要来自users表的一些字段以及同一行上相关问题的计数。如果它无法完成,我只会使用单独的查询,但我只是想我要求更整洁的代码

3 个答案:

答案 0 :(得分:1)

这样的事情:

SELECT u.*, COUNT(*) questions
FROM users u
JOIN QUESTIONS q ON u.userid = q.userid
GROUP BY u.userid

如果您只想要users表中的某些列,请将u.*替换为您关注的列列表。

答案 1 :(得分:0)

假设您有一个表格,其中包含每个用户的一个或多个问题;

SELECT Count(DISTINCT id) FROM questions
// or
SELECT Count(id) FROM questions GROUP BY user_id

答案 2 :(得分:0)

这就是我所说的:

   SELECT u.name, COUNT(*) questions
    FROM users u
    JOIN questions q ON u.userID = q.userID
    GROUP BY u.name