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
Ïà¹ØÎĵµ£º
Ô ÎÄ£ºÆ½·²ËêÔ£ºjiraµÄ°²×°£¨oracleÊý¾Ý¿â£©http://www.trucy.org/blog/ray/archives/000927.html
ÒÔÏÂÊÇ»ùÓÚÔÎĵIJ¹³äÍêÉÆºóµÄÄÚÈÝ£º
JIRAÊÇÒ»¸öÓÅÐãµÄÎÊÌâ(or bugs£¬task£¬improvement£¬new feature  ......
¶ÔÓÚinstrº¯Êý£¬ÎÒÃǾ³£ÕâÑùʹÓ㺴ÓÒ»¸ö×Ö·û´®ÖвéÕÒÖ¸¶¨×Ó´®µÄλÖá£Àý
È磺
SQL> select
instr('yuechaotianyuechao','ao') position from dual;
POSITION
----------
6
´Ó×Ö·û´®'yuechaotianyuechao'µÄµÚÒ»¸öλÖÿªÊ¼£¬Ïòºó² ......
½ñÌìÔÚ»úÆ÷ÉÏ×°Oracle 10g£¬°²×°Íê³ÉÒÔºó³öÏÖ´íÎóÌáʾ¡°ORA-00988: ¿ÚÁîȱʧ»òÎÞЧ¡±£¬È»ºó¾ÍÎÞ·¨½øÈë¿ØÖÆÌ¨½øÐÐÏàÓ¦µÄ²Ù×÷ºÍ¹ÜÀí£¬ÎÒÒÔǰÔÚ°²×°Oracle 9ʱ²¢Ã»ÓгöÏÖ¹ý
Õâ¸ö´íÎó¡£È»ºóÐ¶ÔØºóÖØÐ°²×°£¬ÎÊÌâÒÀ¾É£¬ÕÛÌÚÁ˺ôóÒ»ÕóÖÕÓÚŪÃ÷°×ÊÇÔõôһ»ØÊÂÁË¡£
ÕâÖÖÇé¿öͨ³£·¢ÉúÓÚ´´½¨ Oracle Àý³Ìʱָ¶¨ÁË·ÇÕý³£µÄÈ«¾ÖÊý¾Ý¿ ......
ÓÐÁ½ÖÖº¬ÒåµÄ±í´óС¡£Ò»ÖÖÊÇ·ÖÅä¸øÒ»¸ö±íµÄÎïÀí¿Õ¼äÊýÁ¿£¬¶ø²»¹Ü¿Õ¼äÊÇ·ñ±»Ê¹Ó᣿ÉÒÔÕâÑù²éѯ»ñµÃ×Ö½ÚÊý£º
select segment_name, bytes
from user_segments
where segment_type = 'TABLE';
»òÕß
Select Segment_Name,Sum(bytes)/1024/1024 from User_Extents Group By Segment_Name
ÁíÒ»ÖÖ±íʵ¼ÊÊ¹Ó ......
Òª½øÐÐѹÁ¦²âÊÔ£¬Öмä¼þʹÓÃWEBLOGIC 816
£¬Êý¾Ý¿â°æ±¾Îª11.1.0.6 RAC
£¬Ñ¹Á¦²âÊÔ¹¤¾ßΪLOADRUNNER 8.0
¡£²âÊÔµ¥ÊµÀýÓëRAC
»·¾³¸÷¸ö½ÚµãµÄ¸ºÔØÇé¿ö¡£
ÔÚWEBLOGIC
ÉÏÅäÖÃÁËÒ»¸ö¶à³Ø£¬ÀûÓÃWEBLOGIC
ÌṩµÄ¸ºÔؾùºâ²ßÂÔ£¬½«²¢·¢¾ùºâµÄ·Ö±ðµ½Á½¸ö½ÚµãÉÏ¡£
µ«ÊDzâÊÔ·¢ÏÖ£¬Ò»µ©ÔËÐÐ
ÁËÒ»¶Îʱ¼ä£¬ËùÓе ......