oracle中的rownum问题

为什么这样
SELECT *
FROM TESTROWNUM T
WHERE ROWNUM in (1,2,3,4,5,6,7,8,9) 有结果

这样就没有结果
SELECT *
FROM TESTROWNUM T
WHERE ROWNUM in
(SELECT ROWNUM rn
FROM (SELECT ID
FROM TESTROWNUM T1
ORDER BY T1.ID ASC) where ROWNUM < 10)

SELECT ID
FROM TESTROWNUM T1
ORDER BY T1.ID ASC

你这个id查询出来的是char吧
查询出来的结果和ROWNUM不匹配
还有SELECT ID --〉SELECT T1.ID

![图片说明](https://img-ask.csdn.net/upload/201602/03/1454486937_733744.jpg)图片说明

图片说明

图片说明