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 &
Ïà¹ØÎĵµ£º
Êý¾Ý×Öµädict×ÜÊÇÊôÓÚOracleÓû§sysµÄ¡£
1¡¢Óû§£º
¡¡select username from dba_users;
¸Ä¿ÚÁî
¡¡alter user spgroup identified by spgtest;
2¡¢±í¿Õ¼ä£º
¡¡select * from dba_data_files;
¡¡select * from dba_tablespaces;//±í¿Õ¼ä
¡¡select tablespace_name,sum(bytes), sum(blocks)
from dba_ ......
±¾ÊÓͼ°üÀ¨Shared poolÖÐSQLÓï¾äµÄÍêÕûÎı¾£¬Ò»ÌõSQLÓï¾ä¿ÉÄֳܷɶà¸ö¿é±»±£´æÓÚ¶à¸ö¼Ç¼ÄÚ¡£
V$SQLTEXTÖеij£ÓÃÁÐ
HASH_VALUE£ºSQLÓï¾äµÄHashÖµ
ADDRESS£ºsqlÓï¾äÔÚSGAÖеĵØÖ·
SQL_TEXT£ºSQLÎı¾¡£
PIECE£ºSQLÓï¾ä¿éµÄÐòºÅ
V$SQLTEXTÖеÄÁ¬½ÓÁÐ
Column View   ......
ÓÐÁ½ÖÖº¬ÒåµÄ±í´óС¡£Ò»ÖÖÊÇ·ÖÅä¸øÒ»¸ö±íµÄÎïÀí¿Õ¼äÊýÁ¿£¬¶ø²»¹Ü¿Õ¼äÊÇ·ñ±»Ê¹Ó᣿ÉÒÔÕâÑù²éѯ»ñµÃ×Ö½ÚÊý£º
select segment_name, bytes
from user_segments
where segment_type = 'TABLE';
»òÕß
Select Segment_Name,Sum(bytes)/1024/1024 from User_Extents Group By Segment_Name
ÁíÒ»ÖÖ±íÊ ......
SQLÖеĵ¥¼Ç¼º¯Êý
Ò»¡¢×Ö·ûº¯Êý
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii(’A’) A,ascii(’a’) a,ascii(’0’) zero,ascii(’ ’) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
......