[英]rownum issue in oracle query
我正在嘗試運行此查詢,但它返回零行。 有什么線索嗎?
Select distinct a.id
from table1 a, table b
where ( a.id= b.id or a.id = b.secondid ) and rownum < 200;
但是,如果我在沒有ROWNUM子句的情況下運行上述查詢,它將找到記錄:
Select distinct a.id
from table1 a, table b
where ( a.id= b.id or a.id = b.secondid );
我很困惑為什么第一個查詢不起作用。
Oracle確定要返回哪些行后,需要應用ROWNUM
。 唯一可靠的方法是這樣的:
SELECT * FROM (
Select distinct a.id
from table1 a, table b
where ( a.id= b.id or a.id = b.secondid )
) WHERE ROWNUM < 200;
請使用下面的線程。 很好的解釋。 https://community.oracle.com/thread/210143這是兩個可行的解決方案。
將“ and rownum <200”更改為“ WHERE rownum <200”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.