Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何为这个问题编写SQL语句?_Mysql_Sql_Sql Server - Fatal编程技术网

Mysql 如何为这个问题编写SQL语句?

Mysql 如何为这个问题编写SQL语句?,mysql,sql,sql-server,Mysql,Sql,Sql Server,CHAMPIONS(~500行) 写一个查询,显示每个国家至少两次赢得世界杯的国家赢得世界杯的次数 我感到困惑的是,每个国家赢得了多少次,比如2018年法国赢了3次。我不确定是否需要计数选项或select语句 如果有更多的澄清和帮助,或者我的查询需要任何调整,我将不胜感激 我所尝试的: 这就是我想到的: SELECT YEAR, COUNTRY FROM CHAMPIONS WHERE COUNTRY>=2; 我希望这是对的。你必须计算每个国家的不同年份,如下所示: SELECT COU

CHAMPIONS
(~500行)

写一个查询,显示每个国家至少两次赢得世界杯的国家赢得世界杯的次数

我感到困惑的是,每个国家赢得了多少次,比如2018年法国赢了3次。我不确定是否需要计数选项或select语句

如果有更多的澄清和帮助,或者我的查询需要任何调整,我将不胜感激

我所尝试的:

这就是我想到的:

SELECT YEAR, COUNTRY
FROM CHAMPIONS
WHERE COUNTRY>=2;

我希望这是对的。

你必须计算每个国家的不同年份,如下所示:

SELECT COUNTRY, COUNT(DISTINCT [YEAR]) AS WON
    FROM CHAMPIONS
    GROUP BY COUNTRY
    HAVING COUNT(DISTINCT [YEAR]) > 1;

您必须计算每个国家的不同年份,如下所示:

SELECT COUNTRY, COUNT(DISTINCT [YEAR]) AS WON
    FROM CHAMPIONS
    GROUP BY COUNTRY
    HAVING COUNT(DISTINCT [YEAR]) > 1;

如果你想获得所有冠军,那么很明显,你不能一次拥有超过一个冠军。我会专注于角色。。。假设你只计算经理。。。例如:

 select country,count(*) from champions where role='Manager' group by country,role having count(*)>=2 

如果你想获得所有冠军,那么很明显,你不能一次拥有超过一个冠军。我会专注于角色。。。假设你只计算经理。。。例如:

 select country,count(*) from champions where role='Manager' group by country,role having count(*)>=2 

提示:按和查找
分组。从冠军组中选择国家,按国家计数()>2我认为不可能在一年内三次赢得世界杯。您需要更好地理解您的数据。您应该标记您正在使用的正确RDBMS-您使用的是MySQL还是Microsoft SQL Server?欢迎使用SO。首先找出您正在使用的RDBMS。然后查看提示:按
查看
分组和
拥有
。选择国家,从冠军组中按国家计数()>2我认为不可能在一年内三次赢得世界杯。您需要更好地理解您的数据。您应该标记您正在使用的正确RDBMS-您使用的是MySQL还是Microsoft SQL Server?欢迎使用SO。首先找出您正在使用的RDBMS。那就看