[英]SQL : How to copy one row in a table in new table with multiple columns
我正在使用postgresql。
我只有一張表,其中只有一行,列如下:
Name_1 | LastName_1 | Name_2 | LastName_2 | Name_3 | LastName_3 --------------------------------------------------------------- Tom | Jones | James | Sunn | Lee | Harper
我需要將其復制到具有多行和兩列的新表中,例如:
Name | LastName ------------------ Tom | Jones James | Sunn Lee | Harper
這樣,所有來自第一個表Name_1,Name_2和Name_3的表都將進入新表,位於新列Name下,姓氏也是如此。
我找到了一些類似PIVOT的選項,但我不知道如何使用它。
如果您的數據不大,那么最簡單的方法是將union all
:
select name_1 as name, lastname_1 as lastname from t union all
select name_2 as name, lastname_2 as lastname from t union all
select name_3 as name, lastname_3 as lastname from t;
還有其他方法可以處理更大的數據,或者主要考慮性能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.