±Ê¼Ç£ºOracle³£Ó÷ÖÎöº¯Êý
Oracle³£Ó÷ÖÎöº¯Êý
ROW_NUMBER
·µ»ØÓÐÐò×éÖÐÒ»ÐÐµÄÆ«ÒÆÁ¿£¬´Ó¶ø¿ÉÓÃÓÚ°´Ìض¨±ê×¼ÅÅÐòµÄÐкÅ
row_number() over(partition by ... order by ...)
RANK
¸ù¾ÝORDER BY×Ó¾äÖбí´ïʽµÄÖµ£¬´Ó²éѯ·µ»ØµÄÿһÐУ¬¼ÆËãËüÃÇÓëÆäËüÐеÄÏà¶ÔλÖá£×éÄÚµÄÊý¾Ý°´ORDER BY×Ó¾äÅÅÐò£¬È»ºó¸øÃ¿Ò»Ðи³Ò»¸öºÅ£¬´Ó¶øÐγÉÒ»¸öÐòÁУ¬¸ÃÐòÁдÓ1¿ªÊ¼£¬ÍùºóÀÛ¼Ó¡£Ã¿´ÎORDER BY±í´ïʽµÄÖµ·¢Éú±ä»¯Ê±£¬¸ÃÐòÁÐÒ²ËæÖ®Ôö¼Ó¡£ÓÐͬÑùÖµµÄÐеõ½Í¬ÑùµÄÊý×ÖÐòºÅ£¨ÈÏΪnullʱÏàµÈµÄ£©¡£È»¶ø£¬Èç¹ûÁ½ÐеÄÈ·µÃµ½Í¬ÑùµÄÅÅÐò£¬ÔòÐòÊý½«ËæºóÌøÔ¾¡£ÈôÁ½ÐÐÐòÊýΪ1£¬ÔòûÓÐÐòÊý2£¬ÐòÁн«¸ø×éÖеÄÏÂÒ»ÐзÖÅäÖµ3£¬DENSE_RANKÔòûÓÐÈκÎÌøÔ¾
rank() over(partition by ... order by ...)
DENSE_RANK
¸ù¾ÝORDER BY×Ó¾äÖбí´ïʽµÄÖµ£¬´Ó²éѯ·µ»ØµÄÿһÐУ¬¼ÆËãËüÃÇÓëÆäËüÐеÄÏà¶ÔλÖá£×éÄÚµÄÊý¾Ý°´ORDER BY×Ó¾äÅÅÐò£¬È»ºó¸øÃ¿Ò»Ðи³Ò»¸öºÅ£¬´Ó¶øÐγÉÒ»¸öÐòÁУ¬¸ÃÐòÁдÓ1¿ªÊ¼£¬ÍùºóÀÛ¼Ó¡£Ã¿´ÎORDER BY±í´ïʽµÄÖµ·¢Éú±ä»¯Ê±£¬¸ÃÐòÁÐÒ²ËæÖ®Ôö¼Ó¡£ÓÐͬÑùÖµµÄÐеõ½Í¬ÑùµÄÊý×ÖÐòºÅ£¨ÈÏΪnullʱÏàµÈµÄ£©¡£Ãܼ¯µÄÐòÁзµ»ØµÄʱûÓмä¸ôµÄÊý
dense_rank() over(partition by ... order by ...)
COUNT
¶ÔÒ»×éÄÚ·¢ÉúµÄÊÂÇé½øÐÐÀÛ»ý¼ÆÊý£¬Èç¹ûÖ¸¶¨*»òһЩ·Ç¿Õ³£Êý£¬count½«¶ÔËùÓÐÐмÆÊý£¬Èç¹ûÖ¸¶¨Ò»¸ö±í´ïʽ£¬count·µ»Ø±í´ïʽ·Ç¿Õ¸³ÖµµÄ¼ÆÊý£¬µ±ÓÐÏàֵͬ³öÏÖʱ£¬ÕâЩÏàµÈµÄÖµ¶¼»á±»ÄÉÈë±»¼ÆËãµÄÖµ£»¿ÉÒÔʹÓÃDISTINCTÀ´¼Ç¼ȥµôÒ»×éÖÐÍêÈ«ÏàͬµÄÊý¾Ýºó³öÏÖµÄÐÐÊý
count(...) over(partition by ... order by ...)
MAX
ÔÚÒ»¸ö×éÖеÄÊý¾Ý´°¿ÚÖвéÕÒ±í´ïʽµÄ×î´óÖµ
max(...) over(partition by ... order by ...)
MIN
ÔÚÒ»¸ö×éÖеÄÊý¾Ý´°¿ÚÖвéÕÒ±í´ïʽµÄ×îСֵ
min(...) over(partition by ... order by ...)
SUM
¸Ãº¯Êý¼ÆËã×éÖбí´ïʽµÄÀÛ»ýºÍ
sum(...) over(partition by ... order by ...)
AVG
ÓÃÓÚ¼ÆËãÒ»¸ö×éºÍÊý¾Ý´°¿ÚÄÚ±í´ïʽµÄƽ¾ùÖµ
avg(...) over(partition by ... order by ...)
FIRST_VALUE
·µ»ØÊý¾Ý×éÖеÚÒ»¸öÖµ
first_value(...) over(partition by ... order by ...)
LAST_VALUE
·µ»ØÊý¾Ý×éÖÐ×îºóÒ»¸öÖµ
last_value(...) over(partition by ... order by ...)
LAG
¿ÉÒÔ·ÃÎʽá¹û¼¯ÖÐµÄÆäËüÐжø²»ÓýøÐÐ×ÔÁ¬½Ó¡£ËüÔÊÐíÈ¥´¦ÀíÓα꣬¾ÍºÃÏñÓαêÊÇÒ»¸öÊý×éÒ»Ñù¡£ÔÚ¸ø¶¨×éÖпɲο¼µ±Ç°ÐÐ֮ǰµÄÐУ¬ÕâÑù¾Í¿ÉÒÔ´Ó×éÖÐÓ뵱ǰÐÐÒ»ÆðÑ¡ÔñÒÔǰµÄÐС£OffsetÊÇÒ»¸öÕýÕûÊý
Ïà¹ØÎĵµ£º
create or replace procedure prc_statistic_declare(table_name varchar2 ,table_name_pass varchar2 ,not_exist varchar2,not_exist_record varchar2)
--eg:'t_statistic_bianyuanhu_month',t_statistic_bianyuanhu_month,('YEAR','STATISTIC_ID')','YESR'
is
v_sql_column varchar2(1000);
  ......
OracleÊý¾Ý¿âÓÐÈýÖÖ±ê×¼µÄ±¸·Ý·½·¨£¬ËüÃÇ·Ö±ðÊǵ¼³ö£¯µ¼È루EXP/IMP£©¡¢Èȱ¸·ÝºÍÀ䱸·Ý¡£µ¼³ö±¸¼þÊÇÒ»ÖÖÂß¼±¸·Ý£¬À䱸·ÝºÍÈȱ¸·ÝÊÇÎïÀí±¸·Ý¡£
Ò»¡¢ µ¼³ö£¯µ¼È루Export£¯Import£©
ÀûÓÃExport¿É½«Êý¾Ý´ÓÊý¾Ý¿âÖÐÌáÈ¡³öÀ´£¬ÀûÓÃImportÔò¿É½«ÌáÈ¡³öÀ´µÄÊý¾ÝËͻص½OracleÊý¾Ý¿âÖÐÈ¥¡£
£±¡¢ ¼òµ¥µ¼³öÊý¾Ý£¨Export£©ºÍµ¼ÈëÊý¾ ......
Oracle±íµÄ¹ÜÀí
±íÃûºÍÁÐÃûµÄÃüÃû¹æÔò£º
1±ØÐëÒÔ×Öĸ¿ªÍ·
2³¤¶È²»Äܳ¬¹ý30¸ö×Ö·û
3²»ÄÜʹÓÃOracleµÄ±£Áô×Ö
4Ö»ÄÜʹÓÃÈçÏÂ×Ö·û£ºA-Z,a-z,0-9,$,#µÈ
OracleÖ§³ÖµÄÊý¾ÝÀàÐÍ£º
1char ¶¨³¤£¬×î´ó2000×Ö·û
Àý×Ó£ºchar(10) ‘Ïþ»Ô’ ǰËĸö×Ö·û·Å’Ïþ»Ô’£¬ºóÌíÁù¸ö¿Õ¸ñ²¹È«
2varchar2(20) ±ä³¤£¬×î´ ......
±íµÄ²éÕÒ£º
select * from emp where (sal>500 or job='MANAGER') and ename like 'J%';
ÒýºÅÀï±ßµÄ×Ö·ûÊÇÇø·Ö´óСдµÄ¡£
²éÕÒÖ®ºó°Ñ½á¹ûÅÅÐò£º
select * from emp order by sal asc;
ascÊÇÉýÐò£¬descÊǽµÐò
¶ÔÁÐÖØÃüÃû£¬Ö»Òª´ò¸ö¿Õ¸ñ£¬ºó¸úÐÂÁÐÃû¾Í¿ÉÒÔ
select ename,sal*12+nvl(comm,0)*12 "Äêн" from ......
½ñÌìÉÏÎç²âÊÔÒ»¸ö·ÃÎÊORACLEµÄc++À࣬ÎĵµÉÏ˵Á¬½Ó×Ö·û´®µÄ¸ñʽΪ"Óû§Ãû/¿ÚÁî@Á¬½ÓÃû"£¬ÎÒ²»ÊÇÌ«Ã÷°×Á¬½ÓÃûµ½µ×ΪºÎÎÏÈÓÃIPµØÖ·ÊÔÁËÊÔ
£¬×ÜÊDZ¨´í£¬ËµÎÞ·¨½âÎöµÄÁ¬½Ó±êʶ·û£¬ºóÀ´ÔÚÍøÉϲéÁ˰ëÌ죬¿´µ½ÓиöÈË˵Á¬½ÓÃû¾ÍÊÇ$(ORACLE_HOME)/network/admin/tnsnames.oraÀﶨÒåµÄÊý¾Ý¿âÁ¬½ÓµÄÃû³Æ£¬ÊÔÁËһϣ¬¹ûÈ»Èç´Ë¡£ ......