无法正确形成MySQL查询(或子查询)

时间:2013-03-31 20:43:30

标签: mysql

我有一个SQL查询,我似乎无法做对。桌子并不十分复杂。我拥有的字段是Name和2个FacebookUserID。我正在参加推荐比赛。第一个FbookUId是参加比赛的人的ID,推荐ID是推荐他们的用户的ID。 我想选择每个主要的fbookUID并计算该人负责的推荐人数。这是我试过的查询:

我做了一个更新:这是我创建的一些简单示例数据:

INSERT INTO facebookContest
(name, FacebookID, FacebookReferalID)
VALUES
('Joe', '10', '1'),
('Sam', '20', '5'),
('Mary', '30', '20'),
('Jim', '40', '20'),
('Mike', '50', '100'),
('Bob', '60', '100');

我的查询:

SELECT name, FacebookID, COUNT(FacebookReferalID) FROM facebookContest GROUP BY FacebookReferalID

以下是我的查询结果,显然不对:

NAME    FACEBOOKID  COUNT(FACEBOOKREFERALID)
Joe 10  1
Sam 20  1
Mary    30  2
Mike    50  2

玛丽和迈克没有任何转介,但每个人都获得2分。我想在我的查询中返回每个唯一的Facebook ID。只返回6个中的4个。

SELECT *, COUNT (FacebookReferalID) FROM facebookContest GROUP BY FacebookID

我想我可能需要一个子查询,但我不是那么多的SQL专家把它组合在一起。 谢谢!

1 个答案:

答案 0 :(得分:0)

我发现您的查询没有任何问题:http://sqlfiddle.com/#!2/327b7/4/0

这不是你需要的吗?