Mysql合并今年和去年最后一个季度的总结果?



我以前从来没有这样做过,试着在网上搜索,真的不知道我在找什么。我必须显示今年的所有结果,但也要将这些结果与去年最后一个季度合并。因此,显示今年所有结果的查询是:

SELECT distinct(jurisdiction), total_miles FROM test_a WHERE year = '2021' ORDER BY year DESC, quarter DESC, jurisdiction ASC

,包括上一季度的结果是:

SELECT distinct(jurisdiction), total_miles FROM test_a WHERE year = '2020' AND quarter ='4'

DB结构为:

quarter
year
jurisdiction
total_miles

一个示例输出是:

Q1 2021 TX 100 miles
Q1 2021 CA 20 miles
Q2 2021 TX 50 miles
Q4 2020 AL 500 miles

合并今年和去年季度的结果的查询是什么?甚至我的第一个查询也不正确,因为它不会汇总当前年度每个季度的所有里程。

因此,如果今年TX辖区有100英里,去年第四季度有50英里,那么结果就是TX辖区有150英里。它会把每个辖区的里程数加起来。谢谢你的宝贵时间。

2021年您必须按管辖权分组以获得该年的总数,其余的应该是INNER JOIN

SELECT t1.jurisdiction, t1.total_miles + t2.total_miles as totalmile 
FROM
(SELECT jurisdiction, SUM(total_miles) as total_miles FROM test_a WHERE year = '2021' GROUP BY jurisdiction) t1
INNER JOIN (SELECT distinct(jurisdiction), total_miles FROM test_a WHERE year = '2020' AND quarter ='4') t2 ON t1.jurisdiction = t2.jurisdiction
ORDER BY t1.jurisdiction ASC

最新更新