[英]SQL make each column a new table
我有一個表,其中包含 [ID] 列、[t] 列指示期間以及 22 個其他會計分類帳相關列:
ID | 噸 | 收入 | 費用 | ...20 其他列... |
---|---|---|---|---|
1 | 1 | 23,040 | 21,204 | 某某,某某 |
1 | 2 | 21,302 | 19,302 | 某某,某某 |
1 | 3 | 51,302 | 29,302 | 某某,某某 |
1 | 4 | 61,302 | 49,302 | 某某,某某 |
2 | 1 | 23,040 | 21,204 | 某某,某某 |
2 | 2 | 21,302 | 19,302 | 某某,某某 |
2 | 3 | 51,302 | 29,302 | 某某,某某 |
2 | 4 | 61,302 | 49,302 | 某某,某某 |
我想根據此處的列創建新表,例如收入表和費用表,以及 pivot [t] 作為新表中的列。
現在我正在編寫 22 個重復代碼查詢,SELECT 每列輸出,pivot,並創建我的新表。 而且我必須手動並單獨運行它們。 我想知道是否有更聰明的方法來編寫一個查詢並創建 22 個表,每個表都從原始表中各自的列中獲取值。
謝謝
根據您的數據庫,您可以在系統表上搜索表的定義(例如:使用 Oracle 您可以使用SYS.DBA_TABLES
)並基於此生成CREATE TABLE
語句。
然后您可以查詢您的表並將值插入新表中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.