Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

¡¾×ª¡¿ Oracle group by¼°ÆäÈô¸ÉÏà¹Øº¯ÊýµÄһЩ˵Ã÷

Oracle group by¼°ÆäÈô¸ÉÏà¹Øº¯ÊýµÄһЩ˵Ã÷
http://blog.csdn.net/roland_wg/archive/2009/07/03/4319323.aspx
OracleµÄgroup by³ýÁË»ù±¾Ó÷¨ÒÔÍ⣬»¹ÓÐ3ÖÖÀ©Õ¹Ó÷¨£¬·Ö±ðÊÇrollup¡¢cube¡¢grouping sets¡£
¼ÙÉèÓÐÒ»¸ö±ítest£¬ÓÐA¡¢B¡¢C¡¢D¡¢E5ÁС£
1£© Èç¹ûʹÓÃgroup by rollup(A,B,C)£¬Ê×ÏÈ»á¶Ô(A¡¢B¡¢C)½øÐÐGROUP BY£¬È»ºó¶Ô(A¡¢B)½øÐÐGROUP BY£¬È»ºóÊÇ(A)½øÐÐGROUP BY£¬×îºó¶ÔÈ«±í½øÐÐGROUP BY²Ù×÷¡£roll upµÄÒâ˼ÊÇ“¾íÆð”£¬ÕâÒ²¿ÉÒÔ°ïÖúÎÒÃÇÀí½âgroup by rollup¾ÍÊǶÔÑ¡ÔñµÄÁдÓÓÒµ½×óÒÔÒ»´ÎÉÙÒ»Áеķ½Ê½½øÐÐgroupingÖ±µ½ËùÓÐÁж¼È¥µôºóµÄgrouping(Ò²¾ÍÊÇÈ«±ígrouping)£¬¶ÔÓÚn¸ö²ÎÊýµÄrollup£¬ÓÐn+1´ÎµÄgrouping¡£ÒÔÏÂ2¸ösqlµÄ½á¹û¼¯ÊÇÒ»ÑùµÄ£º
Select A,B,C,sum(E) from test group by rollup(A,B,C)ºÍ
Select A,B,C,sum(E) from test group by A,B,C
union all
Select A,B,null,sum(E) from test group by A,B
union all
Select A,null,null,sum(E) from test group by A
union all
Select null,null,null,sum(E) from test
2) cubeµÄÒâ˼ÊÇÁ¢·½£¬¶ÔcubeµÄÿ¸ö²ÎÊý£¬¶¼¿ÉÒÔÀí½âΪȡֵΪ²ÎÓëgroupingºÍ²»²ÎÓëgroupingÁ½¸öÖµµÄÒ»¸öά¶È£¬È»ºóËùÓÐά¶Èȡֵ×éºÏµÄ¼¯ºÏ¾ÍÊÇgroupingµÄ¼¯ºÏ£¬¶ÔÓÚn¸ö²ÎÊýµÄcube£¬ÓÐ2^n´ÎµÄgrouping¡£Èç¹ûʹÓÃgroup by cube(A,B,C), £¬ÔòÊ×ÏÈ»á¶Ô(A¡¢B¡¢C)½øÐÐGROUP BY£¬È»ºóÒÀ´ÎÊÇ(A¡¢B)£¬(A¡¢C)£¬(A)£¬(B¡¢C)£¬(B)£¬(C)£¬×îºó¶ÔÈ«±í½øÐÐGROUP BY²Ù×÷£¬Ò»¹²ÊÇ2^3=8´Îgrouping¡£Í¬rollupÒ»Ñù£¬Ò²¿ÉÒÔÓûù±¾µÄgroup by¼ÓÉϽá¹û¼¯µÄunion allд³öÒ»¸öÓëgroup by cube½á¹û¼¯ÏàͬµÄsql£º
Select A,B,C,sum(E) from test group by cube(A,B,C)£»
Select A,B,C,sum(E) from test group by A,B,C
union all
Select A,B,null,sum(E) from test group by A,B
union all
Select A,null,C,sum(E) from test group by A,C
union all
Select A,null,null,sum(E) from test group by A
union all
Select null,B,C,sum(E) from test group by B,C
union all
Select null,B,null,sum(E) from test group by B
union all
Select null,null,C,sum(E) from test group by C
union all
Select null,null,null,sum(E) from test
3) grouping sets¾ÍÊǶԲÎÊýÖеÄÿ¸ö²ÎÊý×ögrouping£¬Ò²¾ÍÊÇÓм¸¸ö²ÎÊý×ö¼¸´Îgrouping, ÀýÈçʹÓÃgroup by grouping sets(A,B,C)£¬Ôò¶Ô(A),(B),(C)½øÐÐgroup by£¬È


Ïà¹ØÎĵµ£º

¼×¹ÇÎÄÍÆ³öOracleÆóÒµ¹ÜÀíÆ÷11g£¨¶þ£©

¼¯³ÉʽӦÓÃÈí¼þÖÁ´ÅÅ̹ÜÀí£¬¼ò»¯¹ÜÀí»·¾³£¬Ìá¸ßͶ×ʻر¨ÂÊ
¡¡¡¡È«Ãæ¹ÜÀíOracleµÄ²úÆ·£¬°üÀ¨Äܹ»¹ÜÀíOracleÓ¦ÓÃÈí¼þ¡¢OracleÈÚºÏÖмä¼þ¡¢OracleÊý¾Ý¿â¡¢Oracle Solaris¡¢OracleÆóÒµ¼¶Linux¡¢Oracle VMºÍOracle Sun·þÎñÆ÷µÄ¹¤¾ß¡£ÕâʹµÃITÄܹ»¿ìËÙÈ·¶¨ÎÊÌâµÄ¸ù±¾Ô­Òò£¬¶øÇÒÔںܶàÇé¿öÏ£¬»¹ÄÜ×Ô¶¯µØ½â¾öÎÊÌâ¡£
¡¡¡¡ÁíÍ⣬Õâ ......

OracleµÄÓû§¹ÜÀí ORA

ÅäÖÃÉí·ÝÑéÖ¤
OracleΪÓû§ÕË»§ÌṩÈýÖÖÉí·ÝÑéÖ¤·½·¨£º
(1)ÃÜÂëÑéÖ¤
µ±Ò»¸öʹÓÃÃÜÂëÑéÖ¤»úÖÆµÄÓû§ÊÔͼÁ¬½Óµ½Êý¾Ý¿âʱ£¬Êý¾Ý¿â»áºËʵÓû§ÃûÊÇ·ñÊÇÒ»¸öÓÐЧµØÊý¾Ý¿âÓû§£¬²¢ÇÒÌṩÓë¸ÃÓû§ÔÚÊý¾Ý¿âÖд洢µÄÃÜÂëÏàÆ¥ÅäµÄÃÜÂë¡£
(2)ÍⲿÑéÖ¤
µ±Ò»¸öÍⲿÑé֤ʽÓû§ÊÔͼÁ¬½Óµ½Êý¾Ý¿âʱ£¬Êý¾Ý¿â»áºËʵÓû§ÃûÊÇ·ñÊÇÒ»¸öÓÐЧµÄ ......

´´½¨oracle dblink

create database link user_auth
¡¡¡¡ connect to user_auth identified by user_auth
¡¡¡¡ using  '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.236)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=develop1)))'; ......

Oracle¶ÔÏóÀàÐÍÏê½â

³éÏóÊý¾ÝÀàÐÍ
1¡¢´´½¨ÀàÐÍ
--µØÖ·ÀàÐÍ
CREATE OR REPLACE TYPE AddressType AS OBJECT
(
Country varchar2(15),
City varchar2(20),
Street varchar2(30)
);
2¡¢ÀàÐÍǶÌ×
--´´½¨»ùÓÚǰһ¸öÀàÐ͵ÄеijéÏóÊý¾ÝÀàÐÍ£º¾ÞÐÇÀàÐÍ
CREATE OR REPLACE TYPE SuperStarType AS OBJECT
(
StarName varchar2(30),
Addres ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ