我在使用 Python 制作圖表時遇到了 SQL 查詢問題。
我想為每個月制作 12 行,其中死亡人數最高。表如下所示:

這些值是從 2021 年開始的每個月的值。
我在這一刻
表一:
| 年 | 月份名稱 | 總死亡人數 |
|---|---|---|
| 2021年 | 格魯津 | 5436581 |
| 2021年 | 格魯津 | 5429544 |
| 2021年 | 格魯津 | 5422092 |
| 2021年 | 格魯津 | 5414213 |
| 2021年 | 格魯津 | 5406818 |
| 2021年 | 格魯津 | 5392790 |
| 2021年 | 格魯津 | 5386664 |
| 2021年 | 格魯津 | 5377197 |
Grudzień 是十二月,所有月份都有值。
預期輸出:
| 月份名稱 | 總死亡人數 |
|---|---|
| 一月 | 死亡的最大值 |
| 二月 | 死亡的最大值 |
| 行進 | 死亡的最大值 |
| 四月 | 死亡的最大值 |
| 可能 | 死亡的最大值 |
| 六月 | 死亡的最大值 |
| 七月 | 死亡的最大值 |
| 八月 | 死亡的最大值 |
| 九月 | 死亡的最大值 |
| 十月 | 死亡的最大值 |
| 十一月 | 死亡的最大值 |
| 十二月 | 死亡的最大值 |
我試過的
SELECT
t.Year,t.MonthName,d.total_deaths
FROM dbo.Dim_time as t
INNER JOIN dbo.Deaths as d on t.ID_Date = d.ID_Date
where t.Year=2021
order by total_deaths DESC
而且不知道怎么選。
uj5u.com熱心網友回復:
我這樣做了:
SELECT t.MonthName, MAX(total_deaths) as total_deaths
from dbo.Deaths as d
inner join dbo.Dim_time as t on d.ID_Date = t.ID_Date
where t.Year = 2021
GROUP BY MonthName
order by total_deaths asc
它看起來像這樣:
| 月份名稱 | 總死亡人數 |
|---|---|
| 斯蒂琴 | 2216314 |
| 盧蒂 | 2530716 |
| 馬爾澤克 | 2815659 |
| 奎切恩 | 3180238 |
| 少校 | 3550000 |
| 切爾韋茨 | 3947020 |
| 脂質體 | 4217383 |
| 西爾皮恩 | 4519157 |
| 弗澤辛 | 4782941 |
| 帕茲杰尼克 | 4999871 |
| 串列板 | 5215558 |
| 格魯津 | 5436581 |
uj5u.com熱心網友回復:
我猜你想要每年,每個月,最高的 total_Deaths ?
如果這是正確的,那么你需要一個簡單的 group by
declare @one table (year int, monthname varchar(50), total_deaths int)
insert into @one values (2021, 'december', 10),
(2021, 'december', 20),
(2021, 'december', 30),
(2021, 'november', 40),
(2021, 'november', 60),
(2021, 'november', 50),
(2020, 'december', 15),
(2020, 'december', 25),
(2020, 'december', 35)
select one.year, one.Monthname, max(one.total_deaths) as total_deaths
from @one one
group by one.year, one.Monthname
結果是
year Monthname total_deaths
2020 december 35
2021 december 30
2021 november 60
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/404948.html
標籤:
上一篇:在第二天上午10點之前檢查資料
下一篇:如何從表變數執行sql結果集
