Mysql 如何对每年进行查询?
我想问一个问题:每年哪家生产商的汽车销量最多?我可以在定义年份的地方编写一个查询,但是如何为每年自动列出它呢Mysql 如何对每年进行查询?,mysql,sql,Mysql,Sql,我想问一个问题:每年哪家生产商的汽车销量最多?我可以在定义年份的地方编写一个查询,但是如何为每年自动列出它呢 SELECT producer, COUNT(type) AS counter FROM `car` INNER JOIN producer ON car.producer= producer.id WHERE produce_year = 2000 GROUP BY type ORDER BY COUNT(type) DESC LIMIT 1 通过将年份添加到组中。删除WH
SELECT producer, COUNT(type) AS counter
FROM `car`
INNER JOIN producer ON car.producer= producer.id
WHERE produce_year = 2000
GROUP BY type
ORDER BY COUNT(type) DESC
LIMIT 1
通过将年份添加到
组中。删除WHERE
子句
SELECT producer, produce_year, COUNT(type) AS counter
FROM `car`
INNER JOIN producer ON car.producer = producer.id
GROUP BY producer, produce_year
ORDER BY COUNT(type) DESC
这将有助于:
select * from (SELECT producer, COUNT(type) as cou
,RANK() OVER (PARTITION BY produce_year ORDER BY COUNT(type)) AS myrank
FROM car c
INNER JOIN producer p ON c.producer= p.id
GROUP BY produce_year)
where myrank=1;
你能提供一些样本数据和预期结果吗?请提供样本数据,你需要在你的选择中介绍生产年份。你的分组方式不正确,应该按生产商分组。我认为排名应该根据生产商销售汽车所产生的价值进行。如果可能,请提供表的模式和一些示例数据。您使用的是哪个MySQL版本?如何每年只返回一个生产者?@JoakimDanielson,这是问题所在吗?没有样本数据和预期结果让我猜测,也许我错了……每年哪家生产商的汽车销量最多?@JoakimDanielson,我会等待样本数据和预期结果。并了解OP使用的是哪个MySQL版本。