Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.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 我为给定问题陈述编写的查询是否正确?_Mysql_Sql - Fatal编程技术网

Mysql 我为给定问题陈述编写的查询是否正确?

Mysql 我为给定问题陈述编写的查询是否正确?,mysql,sql,Mysql,Sql,在MySQL Workbench 8.0中,这个问题语句的查询应该是什么 问:2019年美国或印度制作了多少部电影 提示:美国和印度在2019年制作了一千多部电影 这是我使用的查询(但我觉得这可能不是绝对正确!) title包含电影名称,因此我统计了所有独特的电影 我需要做任何更改吗?首先,不需要计数(不同)。DISTINCT会产生开销,因此只应在必要时使用。只需数一数匹配的行。其次,WHERE子句不正确。如前所述,它需要括号: SELECT COUNT(*) AS no_of_movies F

在MySQL Workbench 8.0中,这个问题语句的查询应该是什么

问:2019年美国或印度制作了多少部电影

提示:美国和印度在2019年制作了一千多部电影

这是我使用的查询(但我觉得这可能不是绝对正确!)

title
包含电影名称,因此我统计了所有独特的电影

我需要做任何更改吗?

首先,不需要计数(不同)。
DISTINCT
会产生开销,因此只应在必要时使用。只需数一数匹配的行。其次,
WHERE
子句不正确。如前所述,它需要括号:

SELECT COUNT(*) AS no_of_movies
FROM movie
WHERE year = 2019 AND (country = 'India' OR country = 'USA');
可以使用中的
简化其中的

WHERE year = 2019 AND country IN ('India', 'USA');

您好,谢谢您的建议,但结果是我的输出为no_of_movies=887,即根据提示小于1000?@JayThakur。可能数据中的国家名称有问题。@JayThakur:将('INDIA'、'USA')中的
国家
比较改为
…UPPER(country))
,看看这是否有区别。如果您没有得到给定查询的预期结果数,请手动查找您认为应该包含但不包含的行,然后调试为什么不包括这一行。
WHERE year = 2019 AND country IN ('India', 'USA');