SQL 提问,我做错了什么?我是 mySQL 的新手
SQL Query, What have I done wrong? I am fairly new to mySQL
Solution
problem
SELECT agency_name, Count(*) AS complaint_type_count
FROM service_request_xs
GROUP BY agency_name
ORDER BY Count(*) DESC;
- 解决方案已上传
您必须告诉 count() 函数要计数的内容。您可以插入一个单独的列,或 * 代表所有列等。但是您必须计算一些东西。
这是一个 fiddle,展示了它是如何工作的:
https://www.db-fiddle.com/f/dbPnE4BXv8oRRkQY4WQs8v/1
SELECT agency_name,
COUNT(DISTINCT compliant_type) AS complaint_type_count
FROM service_request_xs
GROUP BY agency_name
ORDER BY COUNT(DISTINCT compliant_type) DESC;
通常,当你使用Count()
函数时,你必须在括号之间添加一个列名;如:Count(complaint_type)
否则SQL就不知道算什么了
您必须在 SELECT
和 ORDER BY
中执行此操作。
您还可以使用 Count(*)
来计算 table 中的所有行数。
Solution problem
SELECT agency_name, Count(*) AS complaint_type_count
FROM service_request_xs
GROUP BY agency_name
ORDER BY Count(*) DESC;
- 解决方案已上传
您必须告诉 count() 函数要计数的内容。您可以插入一个单独的列,或 * 代表所有列等。但是您必须计算一些东西。
这是一个 fiddle,展示了它是如何工作的: https://www.db-fiddle.com/f/dbPnE4BXv8oRRkQY4WQs8v/1
SELECT agency_name,
COUNT(DISTINCT compliant_type) AS complaint_type_count
FROM service_request_xs
GROUP BY agency_name
ORDER BY COUNT(DISTINCT compliant_type) DESC;
通常,当你使用Count()
函数时,你必须在括号之间添加一个列名;如:Count(complaint_type)
否则SQL就不知道算什么了
您必须在 SELECT
和 ORDER BY
中执行此操作。
您还可以使用 Count(*)
来计算 table 中的所有行数。