久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

編寫 SQL 查詢以將表從 A 轉(zhuǎn)換為 B

Write a SQL query to convert table from A to B(編寫 SQL 查詢以將表從 A 轉(zhuǎn)換為 B)
本文介紹了編寫 SQL 查詢以將表從 A 轉(zhuǎn)換為 B的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

限時送ChatGPT賬號..

在 SQL Server 2016 中,我有一個數(shù)據(jù)庫表(表 A)如下所示:

I have a database table (table A) looks like this, in SQL Server 2016:

表A:

ID     Group       2018     2019    2020
-----------------------------------------
ID1    Group A      200      300     400
ID2    Group B      100      800     ---
ID2    Group B      ----     500     300

我想編寫一個 SQL 查詢或類似的東西或報告工具來生成報告/表(將表 A 轉(zhuǎn)換為表 B),如下所示:

I want to write a SQL query or something like that or a reporting tool to generate a report/table (convert table A to table B) as below:

表 B:

ID       Group   -   Year  -      Value
----------------------------------------
ID1      Group A     2018         200
ID1      Group A     2019         300
ID1      Group A     2020         400
ID2      Group B     2018         100
ID2      Group B     2019         800
ID2      Group B     2019         500
ID2      Group B     2020         300

如果可以通過編寫 SQL 查詢來實現(xiàn),那就太好了.如果需要使用編程語言編寫程序,或者使用工具,也可以,但請告訴我使用什么以及如何實現(xiàn)(我知道一些C#編程).

If it can be achieved by writing a SQL query that would be great. If that it needs to use a programming language to write a program, or use a tool, that will also be OK but please let me know what to use and how to achieve (I know some C# programming).

(我知道我不應(yīng)該使用 ID 和 Group 作為列名.我不會在數(shù)據(jù)庫表中真正使用那個名稱,只是為了簡化這里的問題)

(I know I should not use ID and Group as the column name. I will not really use that name in the database table, just to simplify the question here)

有人可以幫忙嗎?非常感謝!

Anyone can help? Thank you very much!

推薦答案

使用union all的規(guī)范方法:

select id, group, 2018 as year, "2018" from t
union all
select id, group, 2019 as year, "2019" from t
union all
select id, group, 2020 as year, "2018" from t;

不過,在SQL Server中,我強(qiáng)烈推薦apply:

However, in SQL Server, I strongly recommend apply:

select t.id, t.group, v.*
from t cross apply
     (values (2018, [2018]), (2019, [2019]), (2020, [2020])
     ) v(year, value)
where v.value is not null;

這篇關(guān)于編寫 SQL 查詢以將表從 A 轉(zhuǎn)換為 B的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

What SQL Server Datatype Should I Use To Store A Byte[](我應(yīng)該使用什么 SQL Server 數(shù)據(jù)類型來存儲字節(jié) [])
Interpreting type codes in sys.objects in SQL Server(解釋 SQL Server 中 sys.objects 中的類型代碼)
Typeorm Does not return all data(Typeorm 不返回所有數(shù)據(jù))
Typeorm .loadRelationCountAndMap returns zeros(Typeorm .loadRelationCountAndMap 返回零)
How to convert #39;2016-07-01 01:12:22 PM#39; to #39;2016-07-01 13:12:22#39; hour format?(如何將“2016-07-01 01:12:22 PM轉(zhuǎn)換為“2016-07-01 13:12:22小時格式?)
MS SQL: Should ISDATE() Return quot;1quot; when Cannot Cast as Date?(MS SQL:ISDATE() 是否應(yīng)該返回“1?什么時候不能投射為日期?)
主站蜘蛛池模板: 伊人色综合久久天天五月婷 | 一级毛片成人免费看a | 狠狠干在线 | 亚洲一区二区不卡在线观看 | 我要看免费一级毛片 | 国产小视频在线看 | 日韩欧美手机在线 | 成人h动漫亚洲一区二区 | 自拍偷拍视频网 | 久久久精品视频一区二区三区 | 亚洲成人av在线播放 | 久久久久国产精品 | 国产精品视频在线观看 | 欧美亚洲视频 | 欧美极品在线视频 | 日韩成人免费视频 | 亚洲精品视频观看 | 国产偷录叫床高潮录音 | 欧美久久国产精品 | 91久久久久久久 | 亚洲一区二区电影在线观看 | 日日夜夜精品免费视频 | 中文字幕日韩一区 | 亚洲va国产日韩欧美精品色婷婷 | 黄色在线免费观看 | 我要看黄色录像一级片 | 亚洲网站在线观看 | 精品一区二区在线观看 | 日韩欧美精品一区 | 国产成人精品一区二区三区在线 | 国产午夜精品久久久 | 在线播放国产一区二区三区 | 亚洲狠狠丁香婷婷综合久久久 | 精品综合久久 | 久久久久久免费免费 | 成人亚洲精品久久久久软件 | 三级成人在线 | 国产一级片免费视频 | 国产午夜精品理论片a大结局 | 亚洲成人动漫在线观看 | 欧美一区二区三区免费电影 |