原始数据:
-- 创建表
CREATE TABLE TEST_1
( T INT primary key);
-- 插入数据
CREATE OR REPLACE PROCEDURE PRO_1 AS
BEGIN
FOR I IN 1 .. 10000 LOOP
EXECUTE IMMEDIATE 'INSERT INTO TEST_1 VALUES (:I)' USING I;
END LOOP;
END;
BEGIN
PRO_1;
END;
当我使用rownum的时候发现,在有where子句的时候,select的结果符合预期:
SELECT T,ROWNUM N1 FROM TEST_1 WHERE ROWNUM < 10 ORDER BY T;
但是如果不适用where子句,则:
SELECT T,ROWNUM N1 FROM TEST_1 ORDER BY T;
请问这是什么情况呢?