OracleË÷Òý¡¢ÊÓͼ¡¢sqlplus»ù´¡¡¢·ÖÇø±í
Ë÷Òý
Ë÷ÒýµÄÄ¿µÄÊÇÌá¸ß´æ´¢Êý¾ÝÒ³ÃæµÄËÙ¶È
·þÎñÆ÷ɨÃèË÷ÒýÒÔ»ñµÃÊý¾Ý´æ´¢µ¥ÔªµÄµØÖ·
Ë÷ÒýµÄÓŵãΪ£ºÌá¸ß²éѯµÄÖ´ÐÐËÙ¶È¡¢ÊµÊ©Êý¾ÝµÄΨһÐÔ¡¢¼ÓËÙÁ˱íÖ®¼äµÄÁ¬½Ó
Ë÷ÒýµÄȱµãΪ£º´´½¨Ë÷ÒýÐèÒª»¨·Ñ½Ï¶àµÄʱ¼ä¡¢Ã¿¸ö´´½¨µÄË÷ÒýÁ¬Í¬ÔÏȵÄÊý¾ÝÔ´¶¼ÐèÒª¿Õ¼äÀ´´æ´¢Êý¾Ý¡¢Ã¿´ÎÐÞ¸ÄÊý¾ÝʱË÷Òý¶¼Òª¸üÐÂ
--
°´ÕÕË÷ÒýÊý¾ÝµÄ´æ´¢·½Ê½¿ÉÒÔ·ÖΪ£º
B*Ê÷Ë÷Òý
λͼË÷Òý
°´ÕÕË÷Òý¸öÊý·ÖΪ£º
µ¥ÁÐË÷Òý
¸´ºÏË÷Òý
Ë÷ÒýÁÐֵΨһÐÔ¿É·ÖΪ£º
ΨһË÷Òý
·ÇΨһË÷Òý£¨Ä¬ÈÏ£©
--
Create [unique] index index_name
On table_name(column_name,column_name…)
[tablespace tablespace_name];
select * from emp where ename=‘SCOTT’
ÄÇôÎÒÃÇ¿ÉÒÔÔÚenameÁÐÉÏ´´½¨BÊ÷Ë÷Òý£¬Óï¾äÈçÏ£º
create index ind_ename on emp(ename) tablespace users
--
λͼËùÒÔ
ÒÔλÖÃÀ´±íʾË÷ÒýÊý¾Ý
Ïà±ÈBÊ÷Ë÷Òý£¬Î»Í¼Ë÷Òý¿ÉÒÔ½ÚÊ¡´óÁ¿´ÅÅ̿ռä
»ùÓÚÿ¸ö²»Í¬Öµ½¨Á¢Ò»¸öλͼ
Óï·¨£º
CREATE BITMAP INDEX idx_name
ON tab_name(col_name)
TABLESPACE space_name
Àý£º¾³£Ö´ÐÐÓï¾ä£º
Select count(*) from tab_name where gender = ‘F’
ÄÇô¿ÉÒÔÔÚÐÔ±ðÁÐÉϽ¨Á¢Î»Í¼Ë÷Òý£º
Create bitmap index idx_gender
On tab_name(gender)
--
»ùÓÚº¯Êý»ò±í´ïʽËù½¨Á¢µÄË÷Òý
Óï·¨£º
CREATE INDEX idx_name
ON tab_name(func_name(col_name))
È磺
create index funidx_emp_empno on emp substr(empno,1,2);
--
ÏÔʾ±íµÄËùÓÐË÷Òý£º
ÏÔʾEMP±íµÄË÷ÒýÐÅÏ¢
SELECT index_name, index_type, uniqueness
from user_indexes where table_name='EMP';
==================================================
ÊÓͼÊÇÒ»¸öÐéÄâµÄ±í
ÊÓͼÌṩһÖÖ°²È«»úÖÆ£¬±£Ö¤Ö»ÄܼìË÷ºÍÐÞ¸ÄËûÃÇ¿´µÃµ½µÄÊý¾Ý
¸´ÔÓ²éѯµÄʹÓÃÒ²¿ÉÒÔͨ¹ýÊÓͼÀ´¼ò
Ïà¹ØÎĵµ£º
ÓÃdistinct¹Ø¼ü×ÖÖ»ÄܹýÂ˲éѯ×Ö¶ÎÖÐËùÓмǼÏàͬµÄ£¨¼Ç¼¼¯Ïàͬ£©£¬¶øÈç¹ûÒªÖ¸¶¨Ò»¸ö×Ö¶ÎȴûÓÐЧ¹û£¬ÁíÍâdistinct¹Ø¼ü×Ö»áÅÅÐò£¬Ð§Âʺܵ͡£
select distinct name from t1 ÄÜÏû³ýÖØ¸´¼Ç¼£¬µ«Ö»ÄÜȡһ¸ö×ֶΣ¬ÏÖÔÚҪͬʱȡid,nameÕâ2¸ö×ֶεÄÖµ¡£
select distinct id,name from t1 ¿ÉÒÔÈ¡¶à¸ö×ֶΣ¬µ«Ö»ÄÜÏû³ýÕâ2¸ö×Ö¶ ......
oracle·ÖÎöº¯ÊýÊ®·ÖÇ¿´ó£¬ÎÒÃÇÖ»ÒªÕÆÎÕÕâЩ·½·¨£¬¸üÖ±½ÓµÄ˵·¨¾ÍÊÇÖªµÀÕâЩ·ÖÎöº¯ÊýµÄ×÷ÓþÍÄÜÍê³ÉºÜ¶à¹¤×÷¡£
ϱßÌù³öÕâЩº¯Êý£¬¼°¼òµ¥Ó¦Óá£
ÆäÖÐÎÒÏë¶Ôlag£¨£©ºÍlead£¨£©º¯Êý×øÏÂ˵Ã÷£ºlag£¨£©±¾ÉíÊÇÑÓºóµÄÒâ˼Ҳ¾ÍÊÇÑÓºó³öÏÖijÁеÄÊý£¬¶ølead£¨£©ÓÐÒýÁì¡¢ÁìÏȵÄÒâ˼Ҳ¾ÍÊÇÌáǰ¼¸ÐÐÏÔʾijÁÐÊý¾Ý
RANK()
dense_rank() ......
1.»ù±¾½á¹¹
CREATE OR REPLACE PROCEDURE ´æ´¢¹ý³ÌÃû×Ö
(
²ÎÊý1 IN NUMBER,
²ÎÊý2 IN NUMBER
) IS
±äÁ¿1 INTEGER :=0;
±äÁ¿2 DATE;
BEGIN
END ´æ´¢¹ý³ÌÃû×Ö
2.SELECT INTO STATEMENT
½«select²éѯµÄ½á¹û´æÈëµ½±äÁ¿ÖУ¬¿ÉÒÔͬʱ½«¶à¸öÁд洢¶à¸ö±äÁ¿ÖУ¬±ØÐëÓÐ ......
---------------oracle ÈëÃÅ
´ò¿ª·þÎñÆ÷
net start oracleserviceORCL
´ò¿ª¼àÌýÆ÷
lsnrctl start
¹Ø±Õ·þÎñÆ÷
net stop oracleserviceORCL
¹Ø±Õ¼àÌýÆ÷
lsnrctl stop
-----------------------------
1.´´½¨±í
Create table ±íÃû
(×Ö¶ÎÃû Êý¾Ý ......