ORACLE Rank, Dense_rank, row_number
Ŀ¼
======================================================
1.ʹÓÃrownumΪ¼Ç¼ÅÅÃû
2.ʹÓ÷ÖÎöº¯ÊýÀ´Îª¼Ç¼ÅÅÃû
3.ʹÓ÷ÖÎöº¯ÊýΪ¼Ç¼½øÐзÖ×éÅÅÃû
Ò»¡¢Ê¹ÓÃrownumΪ¼Ç¼ÅÅÃû£º
¡¾1¡¿²âÊÔ»·¾³£º
SQL> desc user_order;
Name Null? Type
----------------------------------------- -------- ----------------------------
REGION_ID NUMBER(2)
CUSTOMER_ID NUMBER(2)
CUSTOMER_SALES NUMBER
¡¾2¡¿²âÊÔÊý¾Ý£º
SQL> select * from user_order order by customer_sales;
REGION_ID CUSTOMER_ID CUSTOMER_SALES
---------- ----------- --------------
5 1 151162
10 29 903383
6 7 &nb
Ïà¹ØÎĵµ£º
ÔÌû: http://blog.chinaunix.net/u2/66903/showart_2082884.html
OracleʹÓôóÁ¿²»Í¬µÄÉó¼Æ·½·¨À´¼à¿ØʹÓúÎÖÖȨÏÞ£¬ÒÔ¼°·ÃÎÊÄÄЩ¶ÔÏó¡£Éó¼Æ²»»á·ÀֹʹÓÃÕâЩȨÏÞ£¬µ«¿ÉÒÔÌṩÓÐÓõÄÐÅÏ¢£¬ÓÃÓÚ½ÒʾȨÏÞµÄÀÄÓúÍÎóÓá£
ϱíÖÐ×ܽáÁËOracleÊý¾Ý¿âÖв»Í¬ÀàÐ͵ÄÉó¼Æ¡£
Éó ¼Æ Àà ÐÍ
˵ Ã÷
Óï¾äÉó¼Æ ......
INºÍEXISTSÇø±ð
in ÊÇ°ÑÍâ±íºÍÄÚ±í×÷hash join£¬¶øexistsÊǶÔÍâ±í×÷loop£¬Ã¿´ÎloopÔÙ¶ÔÄÚ±í½øÐвéѯ¡£
Ò»Ö±ÒÔÀ´ÈÏΪexists±ÈinЧÂʸߵÄ˵·¨ÊDz»×¼È·µÄ¡£
Èç¹û²éѯµÄÁ½¸ö±í´óСÏ൱£¬ÄÇôÓÃinºÍexists²î±ð²»´ó¡£
Èç¹ûÁ½¸ö±íÖÐÒ»¸ö½ÏС£¬Ò»¸öÊÇ´ó±í£¬Ôò×Ó²éѯ±í´óµÄÓÃexists£¬×Ó²éѯ±íСµÄÓÃin£º
ÀýÈ磺±íA£¨Ð¡±í£©£¬±íB ......
ÓÉÓÚϵͳÒÆÖ²£¬ÔÀ´µÄÊý¾Ý¿â±àÂëºÍʱÇø¶¼»»ÁË£¬ÔÀ´µÄһЩSQLÎÄÒ²³ö´íÁË¡£¡£
¾³£±À³ö"ORA-01846: not a valid day of the week
"´íÎó¡£
¾²âÊÔ£¬ÒÔÏÂÕâ¸ö¼òµ¥Óï¾äÒ²»á´í£¡£¡
SQL> select next_day(sysdate,'FRIDAY') from DUAL;
select next_day(sysdate,'FRIDAY') from DUAL
ORA-01 ......
×÷Õߣº ÈÕÆÚ£º2005-12-8 1:43:32 À´Ô´£ºInternet µã»÷£º´Î ÆÀÂÛ
¡¡¡¡±¾ÎÄÖ»ÌÖÂÛOracleÖÐ×î³£¼ûµÄË÷Òý£¬¼´ÊÇB-treeË÷Òý¡£±¾ÎÄÖÐÉæ¼°µÄÊý¾Ý¿â°æ±¾ÊÇOracle8i¡£
¡¡¡¡Ò». ²é¿´ÏµÍ³±íÖеÄÓû§Ë÷Òý
¡¡¡¡ÔÚOracleÖУ¬SYSTEM±íÊÇ°²×°Êý¾Ý¿âʱ×Ô¶¯½¨Á¢µÄ£¬Ëü°üº¬Êý¾Ý¿âµÄÈ«²¿Êý¾ ......
select sysdate from dual; ´Óα±í²éϵͳʱ¼ä£¬ÒÔĬÈϸñʽÊä³ö¡£
sysdate+(5/24/60/60) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ãë
sysdate+5/24/60 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5·ÖÖÓ
sysdate+5/24 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Сʱ
sysdate+5 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ìì
ËùÒÔÈÕÆÚ¼ÆËãĬÈϵ¥Î»ÊÇÌì
round (sysdate,’day’) ²»ÊÇËijý ......