簡體   English   中英

SQL 使每一列成為一個新表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM