ORACLE·ÖÎöº¯ÊýµÄÓ÷¨
¿ª´°º¯ÊýµÄµÄÀí½â£º
¿ª´°º¯ÊýÖ¸¶¨ÁË·ÖÎöº¯Êý¹¤×÷µÄÊý¾Ý´°¿Ú´óС£¬Õâ¸öÊý¾Ý´°¿Ú´óС¿ÉÄÜ»áËæ×ÅÐеı仯¶ø±ä»¯£¬¾ÙÀýÈçÏ£º
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
Ïà¹ØÎĵµ£º
OracleÒì³£·ÖΪ3ÖÖ:
(1)Ô¤¶¨ÒåÒì³£:no_data_foundµÈ,ÊÇOracleϵͳ¶¨ÒåµÄÒì³£.
declare
s_test varchar2
begin
select id into s_test from test; --´Ëʱtest±íÎÞÊý¾Ý
exception
when no_data_found then
raise_application_error(-20001, 'ûÓÐÊý¾Ý');
end;
(2)×Ô¶ ......
ÒòΪÃ÷°Ú×ŵÄÔµ¹Ê£¬10.2Òý³öµÄTDEЧÄܶÔÁмÓÃÜÒÔºó£¬ÕÐÖÂÏà¸ÉĿ¼ɥʧÁ˶Բ»µÈʽµÄÅжÏÄÜÁ¦¡£
鍫룼
ENCRYPTIONDEMO@fmw//scripts> create table tde_table(id number encrypt no salt,na
me varchar¶þ(30))
¶þ ;
Table created.
Elapsed: 00:00:00.11
ENCRYPTIONDEMO@fmw//scripts> begin
¶þ for i in 1..2 ......
×öÊý¾Ý¿â¿ª·¢»ò¹ÜÀíµÄÈ˾³£Òª´´½¨´óÁ¿µÄ²âÊÔÊý¾Ý£¬¶¯²»¶¯¾ÍÐèÒªÉÏÍòÌõ£¬Èç¹ûÒ»ÌõÒ»ÌõµÄ¼È룬ÄÇ»áÀË·Ñ´óÁ¿µÄʱ¼ä£¬±¾ÎĽéÉÜÁËOracleÖÐÈçºÎͨ¹ýÒ»ÌõSQL¿ìËÙÉú³É´óÁ¿µÄ²âÊÔÊý¾ÝµÄ·½·¨¡£
²úÉú²âÊÔÊý¾ÝµÄSQLÈçÏ£º
SQL> select rownum as id,
2 &nbs ......
ϵͳ·Ö²½Öè²úÉúµÄ·Ö¼£º
1£©¿â´æÄ£¿é×÷½ÓÊÕʱ²úÉúµÄ·Ö¼Ϊ£º
½è£º²ÄÁϲɹº £¨²É¹ºµ¥¼ÛX¶©µ¥ÊýÁ¿£©
´û£ºÓ¦¼Æ¸ºÕ®
£¨²É¹ºµ¥¼ÛX¶©µ¥ÊýÁ¿£©
2£©¿â´æÄ£¿é×÷¼ìÑéÈë¿âʱ²úÉúµÄ·Ö¼Ϊ£º
ϵͳ²úÉúµÄ·Ö¼·Ö±ðΪ£º
1£©¿â´æÄ£¿é×÷½ÓÊÕʱ²úÉúµÄ·Ö¼Ϊ£º
½è£º²ÄÁϲɹº
£¨²É¹ºµ¥¼ÛX¶©µ¥ÊýÁ¿£©
´û£ºÓ¦¼Æ¸ºÕ®
£¨²É¹ºµ¥¼ÛX¶©µ¥Ê ......
ORACLEµÄlpadº¯Êý¡¢rpadº¯ÊýÓ÷¨
Óï·¨£ºselect lpad('12345678',1,'0') from dual;
·µ»Ø×Ö·û´®‘12345678’µÄ´Ó×ó±ß³¤¶ÈΪ1µÄ×Ö·û´®£¬Èç¹û²»¹»£¬×ó±ß²¹‘0’
Óï·¨£ºselect rpad('12345678',1,'0') from dual;
·µ»Ø×Ö·û´®‘12345678’µÄ´Ó×ó±ß³¤¶ÈΪ1µÄ×Ö·û´®£¬Èç¹û²»¹»£¬Óұ߲¹&ls ......