Oracle·ÖÎöº¯Êý²Î¿¼ÊÖ²á
תÖÁ(http://xsb.itpub.net/post/419/33028)
22/06/2005 12:22 FP
Oracle´Ó8.1.6¿ªÊ¼Ìṩ·ÖÎöº¯Êý£¬·ÖÎöº¯ÊýÓÃÓÚ¼ÆËã»ùÓÚ
×éµÄijÖÖ¾ÛºÏÖµ£¬ËüºÍ¾ÛºÏº¯ÊýµÄ²»Í¬Ö®´¦ÊǶÔÓÚÿ¸ö×é·µ»Ø¶àÐУ¬¶ø¾ÛºÏº¯Êý¶ÔÓÚÿ¸ö×éÖ»·µ»ØÒ»ÐС£
ÏÂÃæÀý×ÓÖÐʹÓõıíÀ´×ÔOracle×Ô´øµÄHRÓû§ÏÂµÄ±í£¬Èç¹û
ûÓа²×°¸ÃÓû§£¬¿ÉÒÔÔÚSYSÓû§ÏÂÔËÐÐ$ORACLE_HOME/demo/schema/human_resources/hr_main.sqlÀ´
´´½¨¡£
³ý±¾ÎÄÄÚÈÝÍ⣬Ä㻹¿É²Î¿¼£º
ROLLUPÓëCUBE http://xsb.itpub.net/post/419/29159
·ÖÎöº¯ÊýʹÓÃÀý×Ó½éÉÜ£ºhttp://xsb.itpub.net/post/419/44634
±¾ÎÄÈç¹ûδָÃ÷£¬È±Ê¡ÊÇÔÚHRÓû§ÏÂÔËÐÐÀý×Ó¡£
¿ª´°º¯ÊýµÄµÄÀí½â£º
¿ª´°º¯ÊýÖ¸¶¨ÁË·ÖÎöº¯Êý¹¤×÷µÄÊý¾Ý´°¿Ú´óС£¬Õâ¸ö
Êý¾Ý´°¿Ú´óС¿ÉÄÜ»áËæ×ÅÐеı仯¶ø±ä»¯£¬¾ÙÀýÈçÏ£º
over£¨order by salary£© °´ÕÕsalaryÅÅÐò½øÐÐÀۼƣ¬order
byÊǸöĬÈϵĿª´°º¯Êý
over£¨partition by deptno£©°´ÕÕ²¿ÃÅ·ÖÇø
over£¨order by salary
range between 50 preceding and 150 following£©
ÿÐжÔÓ¦µÄÊý¾Ý´°¿ÚÊÇ֮ǰÐзù¶ÈÖµ²»³¬¹ý50£¬Ö®
ºóÐзù¶ÈÖµ²»³¬¹ý150
over£¨order by salary rows between 50 preceding and 150
following£©
ÿÐжÔÓ¦µÄÊý¾Ý´°¿ÚÊÇ֮ǰ50ÐУ¬Ö®ºó150ÐÐ
over£¨order by salary rows
between unbounded preceding and unbounded following£©
ÿÐжÔÓ¦µÄÊý¾Ý´°¿ÚÊÇ´ÓµÚÒ»Ðе½×î
ºóÒ»ÐУ¬µÈЧ£º
over£¨order by salary range between unbounded preceding and
unbounded following£©
Ö÷Òª²Î¿¼×ÊÁÏ£º¡¶expert
one-on-one¡· Tom Kyte ¡¶Oracle9i SQL Reference¡·µÚ6ÕÂ
AVG
¹¦ÄÜÃèÊö£ºÓÃÓÚ¼ÆËãÒ»¸ö×éºÍÊý¾Ý´°¿ÚÄÚ±í´ïʽµÄƽ¾ùÖµ¡£
SAMPLE£ºÏÂÃæµÄÀý×ÓÖÐÁÐc_mavg¼ÆËãÔ±¹¤±í
ÖÐÿ¸öÔ±¹¤µÄƽ¾ùнˮ±¨¸æ£¬¸Ãƽ¾ùÖµÓɵ±Ç°Ô±¹¤ºÍÓëÖ®¾ßÓÐÏàͬ¾ÀíµÄǰһ¸öºÍºóÒ»¸öÈýÕߵį½¾ùÊýµÃÀ´£»
SELECT manager_id, last_name, hire_date, salary,
AVG(salary)
OVER (PARTITION BY manager_id ORDER BY hire_date
ROWS BETWEEN 1
PRECEDING AND 1 FOLLOWING) AS c_mavg
from employees;
MANAGER_ID LAST_NAME HIRE_DATE SALARY C_MAVG
----------
------------------------- --------- ---------- ----------
100 Kochhar
21-SEP-89 17000 17000
100 De Haan 13-JAN-93 17000 15000
100
Raphaely 07-DEC-94 11000 11966.6667
100 Kaufling 01-MAY-95 7900
10633.3333
100 Hart
Ïà¹ØÎĵµ£º
¶ÔÓÚinstrº¯Êý£¬ÎÒÃǾ³£ÕâÑùʹÓ㺴ÓÒ»¸ö×Ö·û´®ÖвéÕÒÖ¸¶¨×Ó´®µÄλÖá£Àý
È磺
SQL> select
instr('yuechaotianyuechao','ao') position from dual;
POSITION
----------
6
´Ó×Ö·û´®'yuechaotianyuechao'µÄµÚÒ»¸öλÖÿªÊ¼£¬Ïòºó² ......
1¡¢OracleÀïÃæÓû§µÄÃÜÂëÊǽøÐмÓÃܱ£´æµÄ,ËùÒÔÖ»ÄÜÖØÐÂÐÞ¸ÄÉú³ÉеÄÃÜÂë.
ÀûÓÃϵͳ¹ÜÀíÔ±(sys)µÇ¼,½«scottÓû§µÄÃÜÂëÐ޸ļ´¿É
SQL>conn / as sysdba ;
ÒÑÁ¬½Ó¡£
SQL>alter user scott identified by tiger ;
Óû§ÒѸü¸Ä¡£
µ±È»Ò²¿ÉÒÔµ½WEB¶Ë½øÐÐÐ޸ĵØÖ·ÈçÏÂ:
http://localhsot:1158/em(ÏàÓ¦µÄ·þÎñ±Ø ......
1.²é¿´ËùÓÐÓû§
select * from all_users; -------²é¿´ËùÓеÄÓû§
select * from user_users; --------²é¿´µ±Ç°Óû§
2.²é¿´Óû§»ò½ÇɫϵͳȨÏÞ£º
select * from user_sys_privs; --------²é¿´µ±Ç°Óû§µÄȨÏÞ
3.²é¿´½ÇÉ«Ëù°üº¬µÄȨÏÞ
&nb ......
½ñÌìÔÚ»úÆ÷ÉÏ×°Oracle 10g£¬°²×°Íê³ÉÒÔºó³öÏÖ´íÎóÌáʾ¡°ORA-00988: ¿ÚÁîȱʧ»òÎÞЧ¡±£¬È»ºó¾ÍÎÞ·¨½øÈë¿ØÖÆÌ¨½øÐÐÏàÓ¦µÄ²Ù×÷ºÍ¹ÜÀí£¬ÎÒÒÔǰÔÚ°²×°Oracle 9ʱ²¢Ã»ÓгöÏÖ¹ý
Õâ¸ö´íÎó¡£È»ºóÐ¶ÔØºóÖØÐ°²×°£¬ÎÊÌâÒÀ¾É£¬ÕÛÌÚÁ˺ôóÒ»ÕóÖÕÓÚŪÃ÷°×ÊÇÔõôһ»ØÊÂÁË¡£
ÕâÖÖÇé¿öͨ³£·¢ÉúÓÚ´´½¨ Oracle Àý³Ìʱָ¶¨ÁË·ÇÕý³£µÄÈ«¾ÖÊý¾Ý¿ ......