我有一个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专家把它组合在一起。 谢谢!