Oracle µÄrownum ÔÀíºÍʹÓà ¼°ÓërowidµÄÇø±ð
Oracle µÄrownum ÔÀíºÍʹÓÃ
ÔÚOracle ÖУ¬Òª°´Ìض¨Ìõ¼þ²éѯǰNÌõ¼Ç¼£¬Óøörownum ¾Í¸ã¶¨ÁË¡£
select * from emp where rownum <= 5
¶øÇÒÊéÉÏÒ²¸æ½ë£¬²»ÄܶÔrownum ÓÃ">"£¬ÕâÒ²¾ÍÒâζ×Å£¬Èç¹ûÄãÏëÓÃ
select * from emp where rownum > 5
ÔòÊÇʧ°ÜµÄ¡£ÒªÖªµÀΪʲô»áʧ°Ü£¬ÔòÐèÒªÁ˽ârownum ±³ºóµÄ»úÖÆ£º
1 Oracle executes your query.
2 Oracle fetches the first row and calls it row number 1.
3 Have we gotten past row number meets the criteria? If no, then Oracle discards the row, If yes, then Oracle return the row.
4 Oracle fetches the next row and advances the row number (to 2, and then to 3, and then to 4, and so forth).
5 Go to step 3.
Á˽âÁËÔÀí£¬¾ÍÖªµÀrownum >²»»á³É¹¦£¬ÒòΪÔÚµÚÈý²½µÄʱºò²éѯ³öµÄÐÐÒѾ±»¶ªÆú£¬µÚËIJ½²é³öÀ´µÄrownum ÈÔÈ»ÊÇ1,ÕâÑùÓÀÔ¶Ò²²»»á³É¹¦¡£
ͬÑùµÀÀí£¬rownum Èç¹ûµ¥¶ÀÓÃ=,Ò²Ö»ÓÐÔÚrownum =1ʱ²ÅÓÐÓá£
¶ÔÓÚrownum À´ËµËüÊÇoracle ϵͳ˳Ðò·ÖÅäΪ´Ó²éѯ·µ»ØµÄÐеıàºÅ£¬·µ»ØµÄµÚÒ»ÐзÖÅäµÄÊÇ1£¬µÚ¶þÐÐÊÇ2£¬ÒÀ´ËÀàÍÆ£¬Õâ¸öα×ֶοÉÒÔÓÃÓÚÏÞÖÆ²éѯ·µ»ØµÄ×ÜÐÐÊý£¬¶øÇÒrownum ²»ÄÜÒÔÈκαíµÄÃû³Æ×÷Ϊǰ׺¡£
¾ÙÀý˵Ã÷£º
ÀýÈç±í£ºstudent(ѧÉú)±í£¬±í½á¹¹Îª£º
ID¡¡¡¡¡¡ char(6)¡¡¡¡¡¡¡¡¡¡ --ѧºÅ
name¡¡¡¡¡¡¡¡VARCHAR2(10)¡¡¡¡¡¡--ÐÕÃû
create table student (ID char(6), name VARCHAR2(100));
insert into sale values('200001',‘ÕÅÒ»’);
insert into sale values('200002',‘Íõ¶þ’);
insert into sale values('200003',‘ÀîÈý’);
insert into sale values('200004',‘ÕÔËÄ’);
commit;
(1) rownum ¶ÔÓÚµÈÓÚijֵµÄ²éѯÌõ¼þ
Èç¹ûÏ£ÍûÕÒµ½Ñ§Éú±íÖеÚÒ»ÌõѧÉúµÄÐÅÏ¢£¬¿ÉÒÔʹÓÃrownum =1×÷ΪÌõ¼þ¡£µ«ÊÇÏëÕÒµ½Ñ§Éú±íÖеڶþÌõѧÉúµÄÐÅÏ¢£¬Ê¹ÓÃrownum =2½á¹û²é²»µ½Êý¾Ý¡£ÒòΪrownum ¶¼ÊÇ´Ó1¿ªÊ¼£¬µ«ÊÇ1ÒÔÉϵÄ×ÔÈ»ÊýÔÚrownum ×öµÈÓÚÅжÏÊÇʱÈÏΪ¶¼ÊÇfalseÌõ¼þ£¬ËùÒÔÎÞ·¨²éµ½rownum = n£¨n>1µÄ×ÔÈ»Êý£©¡£
SQL> select rownum ,id,name from student where rownum =1;£¨¿ÉÒÔÓÃÔÚÏÞÖÆ·µ»Ø¼Ç¼ÌõÊýµÄµØ·½£¬±£Ö¤²»³ö´í£¬È磺ÒþʽÓα꣩
SQL> select rownum ,id,name from student where rownum =1;
ROWNUM ID NAME
---
Ïà¹ØÎĵµ£º
ÔÚÒ»±íorginfoÉϽ¨Á¢´¥·¢Æ÷£¬ÆäÖаüÀ¨ÒÔ϶¯×÷£º
Ôöɾ¸Ä´Ë±íµÄ¼Ç¼ʱ£¬ÐèÒª²éѯ´Ë±í£¬ÉõÖÁ¸Äд´Ë±íµÄÆäËû¼Ç¼¡£±¨¸æ“ora-04091:±íÒѾ±»Ð޸쬶ÔÓÚ´¥·¢Æ÷/º¯Êý²»¿É¼û”¡£
Cause: A trigger (or a user defined PL/SQL function that is referenced in this statement) attempted to look at (or modify) a tab ......
Ò»¡¢²ÎÊýÉèÖÃ
--1¡¢ÉèÖÃA£º
db_block_size = 8192
db_domain = ''
db_file_multiblock_read_count = 16
db_name = bidata
db_recovery_file_dest = /export/home/app/oracle/oracle/product/10.2.0/db_1/flash_recovery_area
db_recovery_file_dest_size = 10737418240
dispatchers = '(PROTOCOL=TCP) (SERVICE=b ......
Oracle Óû§¼°½ÇÉ« ½éÉÜ ÊÕ²Ø
Ò». Óû§¹ÜÀí
1.1 ½¨Á¢Óû§£¨Êý¾Ý¿âÑéÖ¤£©
CREATE USER DAVE IDENTIFIED BY pwd
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp ......
£±¡¢È·¶¨ÄãµÄ¼ÆËã»úÉÏ×°ÓÐoracleµÄ¿Í»§¶Ë£¬Èç¹ûûÓУ¬Çë°²×°oracle¿Í»§¶Ë
£²¡¢È·¶¨ÓÐÄãµÄoracle·þÎñÀïÓÐÄãÒªÐèÒª±¸·ÝµÄÊý¾Ý¿âµÄ·þÎñÃû¡£
£³¡¢ÖÆ×÷Ò»¸öÅú´¦ÀíÎļþ£¨oracleBackup.bat£©£¬¾ßÌå·½·¨£º´ò¿ª“¼Çʱ¾”£¬±£´æÎªoracleBackup.bat£¬
¡¡¡¡´Ëʱ±£´æµÄÎļþÀàÐÍÑ¡ÔñΪ“ËùÓÐÎļþ”¡£Îҵı£´æÄ¿Â ......
×÷Ϊһ¸öORACLE DBA,ÔÚ¹¤×÷Öлᾳ£´¦ÀíÓÉÓÚ×Ö·û¼¯²úÉúµÄһЩÎÊÌâ¡£µ«Êǵ±ÕæÕýÏëдһЩÕâ·½ÃæµÄ¶«Î÷ʱ£¬È´Í»È»ÓÖûÓÐÁËÍ·Ð÷¡£·¢Á˰ëÌì´ô£¬»¹ÊǾö¶¨ÓÃÁ½¸ö×Ö·û¼¯·½ÃæµÄÀý×Ó×÷ΪÇÐÈëµã£¬µ¹²»Ê§ÎªÒ»¸öÍ·Ð÷£¬Ëµ²»¶¨ÔÚʵÑéµÄ¹ý³ÌÖУ¬ÎÊÌâ¾Í»áÒ»¸ö½Ó×ÅÒ»¸öµÄ¸¡ÏÖ³öÀ´¡£
ÏÖÔÚ£¬ÈÃÎÒÃÇÇÐÈëÕýÌâ¡£
ÎÒÓõÄÊý¾Ý¿âÊÇoracle10.2.0.3,Êý ......