Oracle ROLLUPºÍCUBE Ó÷¨
ÔÚ×öÏîÄ¿¾³£Óöµ½·Ö¿ÆÊÒ¡¢ÈËÔ±½øÐлã×ܵÄÎÊÌ⣬ÔÚORACLEÖжԴËÀàÎÊÌâµÄ´¦ÀíÏ൱·½±ã£¡ÏÂÃæÒÔÏîÄ¿ÖÐÓöµ½µÄʵÀý½øÐÐ˵Ã÷£º
²éѯÓï¾äÈçÏ£º
select f_sys_getsectnamebysectid(a.sectionid) as sectname,
--a.sectionid,
f_sys_employinfo_getnamebyno(a.buyerid) as name,
sum(c.ratio) as llratio,
sum(b.ratio) as lratio,
sum(a.ratio) as ratio,
sum(d.ratio) as nratio
from (select sectionid, buyerid, ratio
from T_PPRM_ASPPurRatio
where year = '2008') a,
(select buyerid, ratio from T_PPRM_ASPPurRatio where year = '2007') b,
(select buyerid, ratio from T_PPRM_ASPPurRatio where year = '2006') c,
(select buyerid, ratio from T_PPRM_ASPPurRatio where year = '2009') d
where a.buyerid = b.buyerid(+)
and b.buyerid = c.buyerid(+)
and c.buyerid = d.buyerid(+)
group by rollup(a.sectionid, a.buyerid)
ÏÂÃæ×ªÌû¸üÏêϸµÄ½éÉÜ£¬Ðè×ÐϸÌå»á
Oracle ROLLUPºÍCUBE Ó÷¨
OracleµÄGROUP BYÓï¾ä³ýÁË×î»ù±¾µÄÓï·¨Í⣬»¹Ö§³ÖROLLUPºÍCUBEÓï¾ä¡£Èç¹ûÊÇROLLUP(A, B, C)µÄ»°£¬Ê×ÏÈ»á¶Ô(A¡¢B¡¢C)½øÐÐGROUP BY£¬È»ºó¶Ô(A¡¢B)½øÐÐGROUP BY£¬È»ºóÊÇ(A)½øÐÐGROUP BY£¬×îºó¶ÔÈ«±í½øÐÐGROUP BY²Ù×÷¡£Èç¹ûÊÇGROUP BY CUBE(A, B, C)£¬ÔòÊ×ÏÈ»á¶Ô(A¡¢B¡¢C)½øÐÐGROUP BY£¬È»ºóÒÀ´ÎÊÇ(A¡¢B)£¬(A¡¢C)£¬(A)£¬(B¡¢C)£¬(B)£¬(C)£¬×îºó¶ÔÈ«±í½øÐÐGROUP BY²Ù×÷¡£ grouping_id()¿ÉÒÔÃÀ»¯Ð§¹û£º
OracleµÄGROUP BYÓï¾ä³ýÁË×î»ù±¾µÄÓï·¨Í⣬»¹Ö§³ÖROLLUPºÍCUBEÓï¾ä¡£
³ý±¾ÎÄÄÚÈÝÍ⣬Ä㻹¿É²Î¿¼£º
·ÖÎöº¯Êý²Î¿¼Êֲ᣺ http://xsb.itpub.net/post/419/33028
·ÖÎöº¯ÊýʹÓÃÀý×Ó½éÉÜ£ºhttp://xsb.itpub.net/post/419/44634
SQL> create table t as select * from dba_indexes;
±
Ïà¹ØÎĵµ£º
¹¤×÷¹ý³ÌÖÐÐèÒª½«oracleÖеÄÊý¾Ýµ¼Èëµ½excleÖУ¬×Ô¼º×öÁËһϣ¬ÏȽ«·½·¨½éÉÜÈçÏ£¬
Äã¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄʵ¼ÊÇé¿ö£¬×ö³ö¸ü¸Ä¡£
1,½¨Á¢Ò»¸öemp.sqlÎļþÎÒµÄÊÇÔÚF :\SQL\EMP.SQL
set line 120
set pagesize 100
set feedback off
--¹Ø±ÕÀàËÆÓÚ“ÒÑÑ¡11ÐДÕâÑùµÄÊä³ö·´À¡£¬ÒÔ±£Ö¤spoolÊä³ö¶¨ÒåµÄ--ÎļþÖÐÖ»ÓÐÎÒÃÇ ......
±¾ÊµÀýÒÑÍêȫͨ¹ý²âÊÔ,µ¥Ïò,Ë«Ïòͬ²½¶¼¿ÉʹÓÃ.
--Ãû´Ê˵Ã÷£ºÔ´——±»Í¬²½µÄÊý¾Ý¿â
Ä¿µÄ——Ҫͬ²½µ½µÄÊý¾Ý¿â
ǰ6²½±ØÐëÖ´ÐÐ,µÚ6ÒÔºóÊÇһЩ¸¨ÖúÐÅÏ¢.
--1¡¢ÔÚÄ¿µÄÊý¾Ý¿âÉÏ£¬´´½¨dblink
drop public database link dblink ......
¼¸¸ö¼òµ¥µÄ²½Öè´ó·ùÌá¸ßOracleÐÔÄÜ--ÎÒÓÅ»¯Êý¾Ý¿âµÄÈý°å¸«¡£
Êý¾Ý¿âÓÅ»¯µÄÌÖÂÛ¿ÉÒÔ˵ÊÇÒ»¸öÓÀºãµÄÖ÷Ìâ¡£×ÊÉîµÄOracleÓÅ»¯ÈËԱͨ³£»áÒªÇóÌá³öÐÔÄÜÎÊÌâµÄÈ˶ÔÊý¾Ý¿â×öÒ»¸östatspack£¬Ìù³öÊý¾Ý¿âÅäÖõȵȡ£»¹ÓеÄÈËÈÏΪҪץ³öÖ´ÐÐ×îÂýµÄÓï¾äÀ´½øÐÐÓÅ»¯¡£µ«Êµ¼ÊÇé¿öÊÇ£¬Ìá³öÒÉÎʵÄÈ˺ܿÉÄܸù±¾²»¶®Ö´Ðмƻ®£¬¸ü²»ÒªËµstatspac ......
ÓÃoracleÊý¾Ý¿âµÄ´æ´¢¹ý³ÌʵÏÖ·µ»Ø½á¹û¼¯²¢ÊµÏÖ·ÖÒ³µÄ¹¦ÄÜ¡£
Óû§´«Èë²ÎÊý
Ò»ÏÂÊÇת±ðÈ˵ĴúÂë
--°üÉùÃ÷
create or replace package p_page is
-- Author : PHARAOHS
-- Created : 2006-4-30 14:14:14
-- Purpose : ·ÖÒ³¹ý³Ì
TYPE type_cur IS REF CURSOR; &n ......
1¡¢µÇ¼·½·¨:£ºsys or systemµÇ¼
Õ˺ţºsystem
ÃÜÂ룺system as sysdba---------¡·ÃÜÂë+as sysdba
conn system/password as sysdba
ʹÓÃÃüÁ
sql>alter user scott account unlock;
sql> commit;
Í ......