如何编写查询以将数字列表转换为2列。 例如,我有一个带有ID列的表,该列的值是(3、6、9、12、15、18)。
我想要一个看起来像的结果
ID NEXT_ID 3 6 6 9 9 12 12 15 15 18
请注意,这应该适用于ID的任何序列,而不必是3的倍数。 我正在使用Oracle 11.2
SELECT first.ID, min(second.ID) as NEXT_ID FROM TABLE_NAME first, TABLE_NAME second WHERE first.ID < second.ID GROUP BY first.ID