我在sql中创建了两个表。 的播放器(代码(PK),姓,名) 和 错误(playererrorcode(PK),日期,金钱,代码(FK给玩家))
所以两个表看起来像:
玩家:
A1 Surname1 Name1
A2 Surname2 Name2
和错误例如:
E1 2015/7/10 10$ A1
E2 2015/2/20 50$ A1
E3 2015/1/30 40$ A2
E4 2015/5/20 30$ A1
好吧,现在,我必须打印(选择这种语言)只有至少有3个错误的玩家!
在这种情况下,我想只打印包含以下内容的行:姓氏和姓名至少3个错误,然后它必须只打印surname1和name1。
怎么做?
答案 0 :(得分:0)
在SQL Server中,您可以使用计数聚合来获取每个播放器的错误数量,并使用具有来指定所需的错误数量 - 如下所示:< / p>
SELECT
p.surname,
p.name,
FROM players as p
INNER JOIN errors as e
on p.code=e.code
GROUP BY
p.surname,
p.name
HAVING
COUNT(e.playererrorcode)>=3