日期:2014-05-16  浏览次数:21012 次

找出重复 数据
20
20
21
25
10
21

得如下结果
20 Y
20 N
21 Y
25 Y
10 Y
21 N


------解决方案--------------------

WITH ta AS 
(SELECT 20 a FROM dual UNION ALL
SELECT 20 a FROM dual UNION ALL
SELECT 21 a FROM dual UNION ALL
SELECT 25 a FROM dual UNION ALL
SELECT 10 a FROM dual UNION ALL
SELECT 21 a FROM dual 
)

SELECT A,
       DECODE(ROW_NUMBER() OVER(PARTITION BY A ORDER BY ROWNUM),
              1,
              'Y',
              'N')
  FROM TA
 ORDER BY ROWNUM