Oracle·ÖÎöº¯ÊýÓ¦ÓÃ(Analytic Functions)
Oracle ·ÖÎöº¯ÊýʹÓýéÉÜ
·ÖÎöº¯ÊýÊÇoracle816ÒýÈëµÄÒ»¸öȫеĸÅÄî,ΪÎÒÃÇ·ÖÎöÊý¾ÝÌṩÁËÒ»ÖÖ¼òµ¥¸ßЧµÄ´¦Àí·½Ê½.ÔÚ·ÖÎöº¯Êý³öÏÖÒÔǰ,ÎÒÃDZØÐëʹÓÃ×ÔÁª²éѯ,×Ó²éѯ»òÕßÄÚÁªÊÓͼ,ÉõÖÁ¸´ÔӵĴ洢¹ý³ÌʵÏÖµÄÓï¾ä,ÏÖÔÚÖ»ÒªÒ»Ìõ¼òµ¥µÄsqlÓï¾ä¾Í¿ÉÒÔʵÏÖÁË,¶øÇÒÔÚÖ´ÐÐЧÂÊ·½ÃæÒ²ÓÐÏ൱´óµÄÌá¸ß.ÏÂÃæÎÒ½«Õë¶Ô·ÖÎöº¯Êý×öһЩ¾ßÌåµÄ˵Ã÷.
½ñÌìÎÒÖ÷Òª¸ø´ó¼Ò½éÉÜÒ»ÏÂÒÔϼ¸¸öº¯ÊýµÄʹÓ÷½·¨
1. ×Ô¶¯»ã×ܺ¯Êýrollup,cube,
2. rank º¯Êý, rank,dense_rank,row_number
3. lag,leadº¯Êý
4. sum,avg,µÄÒÆ¶¯Ôö¼Ó,ÒÆ¶¯Æ½¾ùÊý
5. ratio_to_report±¨±í´¦Àíº¯Êý
6. first,lastÈ¡»ùÊýµÄ·ÖÎöº¯Êý
»ù´¡Êý¾Ý
Code:
[Copy to clipboard]
06:34:23 SQL> select * from t;
BILL_MONTH AREA_CODE NET_TYPE LOCAL_FARE
--------------- ---------- ---------- --------------
200405 5761 G 7393344.04
200405 5761 J 5667089.85
200405 5762 G 6315075.96
200405 5762 J 6328716.15
200405 5763 G 8861742.59
200405 5763 J 7788036.32
200405 5764 G &
Ïà¹ØÎĵµ£º
ORACLE 10GµÄ¼¯ºÏAPI
¼¯ºÏAPI·½·¨×îÔçÊÇÔÚORACLE 8IÖÐÒýÈëµÄ¡£¼¯ºÏAPIÌṩÁ˼ò»¯·ÃÎʼ¯ºÏµÄ·½·¨¡£ÔÚORACLE 10GÒÔǰ£¬ÕâЩ·½·¨È·Êµ¼ò»¯Á˶Լ¯ºÏµÄ·ÃÎÊ¡£µ«ÊÇ£¬²¢²»ÊÇ·ÇÒªÇóÕÆÎÕÕâЩ·½·¨²»¿É¡£´ÓORACLE 9IµÄINDEX-BY±íµ½ORACLE 10GµÄÁªºÏÊý×éµÄת»»£¬Ê¹ËüÃdzÉΪ±ØÐëÕÆÎյķ½·¨¡£
ÏÂÃæÊÇÎÒ´ÓÊéÉÏժ¼ÏµÄһР......
Oracle±¸·Ý¹ÜÀí
×î¼òµ¥µÄOracle Âß¼±¸·ÝÈí¼þ£¬Ç¿´óµÄ¼Æ»®±¸·Ý¼°ÈßÓ౸·Ý¹¦ÄÜ
Èí¼þÌØÉ«£º
1.ÂéȸËäС£¬ÎåÔà¾ãÈ«¡£±¾×ÅʵÓõĽǶȿª·¢Õâ¸öÈí¼þ£¬Í¬Ê±¼æ¹Ë½çÃæÓ빦ÄÜ
2.ÖÇÄÜ»¯±¸·Ý¹¦ÄÜ£¬µ÷ÓÃOracle µÄexp±¸·Ý¹¦ÄÜ£¬ÖÇÄܼì²â±¸·Ý²ÎÊý
3.ÖÇÄÜѹËõ±¸·ÝÎļþ£¬²»Óõ£Ðı¸·ÝÊý¾Ý¹ý´ó¶øÓ²Å̳ÔÁ¦
4.¼°Æä¼òµ¥µÄ²Ù×÷½çÃæ£¬¼¸·ÖÖÓ¼ ......
±¾ÊÓͼ³ÖÐø¸ú×ÙËùÓÐshared poolÖеĹ²Ïícursor£¬ÔÚshared poolÖеÄÿһÌõSQLÓï¾ä¶¼¶ÔÓ¦Ò»ÁС£±¾ÊÓͼÔÚ·ÖÎöSQLÓï¾ä×ÊԴʹÓ÷½Ãæ·Ç³£ÖØÒª¡£
V$SQLAREAÖеÄÐÅÏ¢ÁÐ
HASH_VALUE£ºSQLÓï¾äµÄHashÖµ¡£
ADDRESS£ºSQLÓï¾äÔÚSGAÖеĵØÖ·¡£
ÕâÁ½Áб»ÓÃÓÚ¼ø±ðSQLÓï¾ä£¬ÓÐʱ£¬Á½Ìõ²»Í¬µÄÓï¾ä¿ÉÄÜhashÖµÏàͬ¡£Õâʱºò£¬±ØÐëÁ¬Í¬ADDRESSÒ ......
°´ÕÕOracleDocumentÖеÄÃèÊö£¬v$sysstat´æ´¢×ÔÊý¾Ý¿âʵÀýÔËÐÐÄÇ¿ÌÆð¾Í¿ªÊ¼ÀÛ¼ÆÈ«ÊµÀý(instance-wide)µÄ×ÊԴʹÓÃÇé¿ö¡£
ÀàËÆÓÚv$sesstat£¬¸ÃÊÓͼ´æ´¢ÏÂÁеÄͳ¼ÆÐÅÏ¢£º
1>.ʼþ·¢Éú´ÎÊýµÄͳ¼Æ(È磺user commits)
2>.Êý¾Ý²úÉú£¬´æÈ¡»òÕß²Ù×÷µÄtotalÁÐ(È磺redo size)
3>.Èç¹ûTIMED_STATISTICSֵΪtrue,Ôòͳ¼Æ»¨·Ñ ......