sql – 什么是rowID&rowNum(ROWID vs ROWNUM)
我想知道rowID和rowNUM之间的区别
以及如何在我们的表格中看到这两个. 当我执行这个: SELECT * FROM emp WHERE rownum=1 它返回一个查询,但是当我对rowid执行相同操作时,它说
甚至在某些表中,rownum返回null.为什么这样? 请澄清一下:rowid vs rownum?(演示查询) 谢谢 编辑:需要使用别名来显示ROWID和ROWNUM(因为它们是伪列) SELECT rownum r1,rowid r2 FROM emp 解决方法rownum和rowed都是伪列.ROWID
示例查询将是: SELECT ROWID,last_name FROM employees WHERE department_id = 20; 有关rowid的更多信息:https://docs.oracle.com/cd/B19306_01/server.102/b14200/pseudocolumns008.htm ROWNUM
您可以使用rownum限制结果量,如下所示: SELECT * FROM employees WHERE ROWNUM < 10; 关于rownum的更多信息:https://docs.oracle.com/cd/B19306_01/server.102/b14200/pseudocolumns009.htm 区别 rowid和rownum之间的实际区别在于,rowid是该行的永久唯一标识符.然而,rownum是暂时的.如果更改查询,则rownum编号将引用另一行,而rowid则不会. 因此,ROWNUM是一个连续的数字,仅适用于特定的SQL语句.相反,ROWID是一行的唯一ID. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |