我有一个查询,用于搜索我们网络中的子部门列表。当查询在没有任何过滤器的情况下执行时,它会在每次执行时返回不同数量的行
SELECT DISTINCT
t1.ZRESUBDIV,
t1.SUBDIV_NAME
FROM M_STAGE_WP_PFUNCT_LOC t1
WHERE ROWNUM <= 200 -- normally a filter goes here
ORDER BY t1.SUBDIV_NAME
Run Code Online (Sandbox Code Playgroud)
执行 1
ZRESUBDIV SUBDIV_NAME ------------ -------------------------------------- --------------- 262 亚历山大 400 艾伦沃特 第671章 第372章 277 比奇堡 200桥 第374章 543 中央比尤特 第208章 第324章 340芝加哥 ...
执行 2
ZRESUBDIV SUBDIV_NAME ------------ -------------------------------------- --------------- 670 阿尔布雷达 262 亚历山大 400 艾伦沃特 第671章 第372章 277 比奇堡 604 黑脚 200桥 第607章 第354章 543 中央比尤特 ...
还有缺失的数据:细分巴吞鲁日虽然在数据中但从未出现过。
如果我删除 ROWNUM,所有数据都会正确返回。我需要保留 ROWNUM,因为查询支持 WHERE 子句,并在细分名称上使用过滤器。
这是什么原因?