2017-01-19 21 views
0

私は次のような表を持っています。oracleのレコードの複製

ID DATE1  DATE2  DATE3  DATE4 
1 01/01/17 02/01/17 03/01/17 04/01/17 

は今、私は、クエリを構築する上で私を助けてください、次の

ID DATE 
1 01/01/17 
1 02/01/17 
1 03/01/17 
1 04/01/17 

のようになります。この表から選択した後に新しいテーブルを作成したいです。

+0

'UNPIVOT'をチェックしてください。 – jarlh

+0

どのOracleのバージョンを使用していますか? –

+0

@SrikanthAでは、テーブルT( "DATE" DATE);を作成できますが、実際にはお勧めしません。 –

答えて

0

最も簡単な方法は、しばしばあるだけunion all:あなたは本当に大きなテーブルを持っている場合は

SELECT ID, DATE1 as date FROM t UNION ALL 
SELECT ID, DATE2 as date FROM t UNION ALL 
SELECT ID, DATE3 as date FROM t UNION ALL 
SELECT ID, DATE4 as date FROM t; 

が、これは、テーブルを複数回スキャンします。パフォーマンスが潜在的な問題である場合は、選択肢があります。

関連する問題