欢迎来到思维库

思维库

oracle FIRST_ROWS和FIRST_ROWS(N)的区别

时间:2025-11-05 07:27:21 出处:数据库阅读(143)

oracle FIRST_ROWS和FIRST_ROWS(N)的区别
复制SQL> SELECT /*+ FIRST_ROWS */ * FROM T   2 WHERE CONTAINS(DOCS, SYS, 1) > 0   3 AND NAME = DUAL 4 ORDER BY SCORE(1);   ID NAME DOCS   ---------- ------------------------------ ----------------------------------   7112 DUAL SYS TABLE DUAL   执行计划   ----------------------------------------------------------   0 SELECT STATEMENT Optimizer=HINT: FIRST_ROWS (Cost=2643Card=1Bytes=74)   1 0 TABLE ACCESS (BY INDEX ROWID) OF T (Cost=2640Card=1Bytes=74)   2 1 DOMAIN INDEX OF IND_T_DOCS (Cost=2369Card=2)   SQL> SELECT /*+ FIRST_ROWS(1) */ * FROM T   2 WHERE CONTAINS(DOCS, SYS, 1) > 0   3 AND NAME = DUAL 4 ORDER BY SCORE(1);   ID NAME DOCS   ---------- ------------------------------ ----------------------------------   7112 DUAL SYS TABLE DUAL   执行计划   ----------------------------------------------------------   0 SELECT STATEMENT Optimizer=HINT: FIRST_ROWS (Cost=5Card=1Bytes=74)   1 0 SORT (ORDER BY) (Cost=5Card=1Bytes=74)   2 1 TABLE ACCESS (BY INDEX ROWID) OF T (Cost=2Card=1Bytes=74)   3 2 INDEX (RANGE SCAN) OF IND_T_NAME (NON-UNIQUE) (Cost=1Card=2)   1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.

分享到:

温馨提示:以上内容和图片整理于网络,仅供参考,希望对您有帮助!如有侵权行为请联系删除!

友情链接: