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

ORACLE ÖÐINºÍEXISTSµÄÇø±ð

Ô­ÎĵØÖ·£ºhttp://www.cnblogs.com/yf520gn/archive/2009/01/12/1374359.html
EXISTSµÄÖ´ÐÐÁ÷³Ì     
select * from t1 where exists ( select null from t2 where y = x )
¿ÉÒÔÀí½âΪ:
  for x in ( select * from t1 )
  loop
      if ( exists ( select null from t2 where y = x.x )
      then
        OUTPUT THE RECORD
      end if
  end loop
¶ÔÓÚin ºÍ existsµÄÐÔÄÜÇø±ð:
  Èç¹û×Ó²éѯµÃ³öµÄ½á¹û¼¯¼Ç¼½ÏÉÙ£¬Ö÷²éѯÖеıí½Ï´óÇÒÓÖÓÐË÷ÒýʱӦ¸ÃÓÃin,·´Ö®Èç¹ûÍâ²ãµÄÖ÷²éѯ¼Ç¼½ÏÉÙ£¬×Ó²éѯÖеıí´ó£¬ÓÖÓÐË÷ÒýʱʹÓÃexists¡£
  ÆäʵÎÒÃÇÇø·ÖinºÍexistsÖ÷ÒªÊÇÔì³ÉÁËÇý¶¯Ë³ÐòµÄ¸Ä±ä£¨ÕâÊÇÐÔÄܱ仯µÄ¹Ø¼ü£©£¬Èç¹ûÊÇexists£¬ÄÇôÒÔÍâ²ã±íΪÇý¶¯±í£¬Ïȱ»·ÃÎÊ£¬Èç¹ûÊÇIN£¬ÄÇôÏÈÖ´ÐÐ×Ó²éѯ£¬ËùÒÔÎÒÃÇ»áÒÔÇý¶¯±íµÄ¿ìËÙ·µ»ØÎªÄ¿±ê£¬ÄÇô¾Í»á¿¼Âǵ½Ë÷Òý¼°½á¹û¼¯µÄ¹ØÏµÁË
                         
ÁíÍâINʱ²»¶ÔNULL½øÐд¦Àí
È磺
select 1 from dual where null  in (0,1,2,null)
Ϊ¿Õ
2.NOT IN ÓëNOT EXISTS:     
NOT EXISTSµÄÖ´ÐÐÁ÷³Ì
select .....
  from rollup R
where not exists ( select 'Found' from title T
                            where R.source_id = T.Title_ID);
¿ÉÒÔÀí½âΪ:
for x in ( select * from rollup )
      loop
          if ( not exists ( that query ) ) then
                OUTPUT
          end if;
      end;
×¢Òâ:NOT EXISTS Óë NOT IN ²»ÄÜÍêÈ«»¥ÏàÌæ»»£¬¿´¾ßÌåµÄÐèÇó¡£Èç¹ûÑ¡ÔñµÄÁпÉÒÔΪ¿Õ£¬Ôò²»Äܱ»Ìæ»»¡£
ÀýÈçÏÂÃæÓï¾ä£¬¿´ËûÃǵÄÇø±ð£º
select x,y from t;
x              y
------        ------
1              3
3        1
1        2
1     


Ïà¹ØÎĵµ£º

oracle¿ØÖÆÎļþ¹ÜÀí


oracleÊý¾Ý¿âͨ¹ý¿ØÖÆÎļþ±£³ÖÊý¾Ý¿âµÄÍêÕûÐÔ£¬Ò»µ©¿ØÖÆÎļþ±»ÆÆ»µÊý¾Ý¿â½«ÎÞ·¨Æô¶¯£¬Òò´Ë½¨Òé²ÉÓöà·¿ØÖÆÎļþ»òÕß±¸·Ý¿ØÖÆÎļþµÄ·½·¨¡£ 
¿ØÖÆÎļþÊÇÊý¾Ý¿â½¨Á¢µÄʱºò×Ô¶¯Éú³ÉµÄ¶þ½øÖÆÎļþ£¬Ö»ÄÜͨ¹ýʵÀý½øÐÐÐ޸ģ¬Èç¹ûÊÖ¶¯Ð޸ĵϰ»áÔì³É¿ØÖÆÎļþÓëÎïÀíÐÅÏ¢²»·ûºÏ£¬´Ó¶øµ¼ÖÂÊý¾Ý¿â²»ÄÜÕý³£¹¤×÷¡£
oracleÊý¾Ý¿âͨ ......

½øÐÐoracleµÄÀ䱸·Ý

1¡¢À䱸·Ý±ØÐ뽫Êý¾Ý¿â·þÎñÆ÷Í£Ö¹£¬²»È»»Ö¸´µÄʱºòÎÞ·¨»Ö¸´
Í£Ö¹·þÎñÆ÷µÄÃüÁ
ÔÚsqlplusϵǽsqlplus£ºsqlplus "/as sysdba"
Í£Ö¹oracle·þÎñ£º shutdown immediate;£¨´ËÃüÁîµÈ´ýÊÂÎñÖ´ÐÐÍê±ÏºóÔٹرգ©
ÊÇÔÚ²»ÐÐÖ±½ÓÇ¿ÐÐÖÕÖ¹:shutdown abort;£¨´ËÃüÁîÖ±½Ó¹Ø±ÕʵÀý·þÎñ£©
¹Ø±Õlistener£º
linuxÃüÁlsnrctl
È»ºóÍ ......

oracle ÒÆ¶¯¸ßˮλ£º

²é¿´±íµÄ´óС£»
select a.blocks,a.bytes,a.bytes/1024/1024 from user_segments a
where a.segment_name='B_M_DZYH_CUST_SIGN_FACT';
Ê×ÏÈ
create table TEST_1228 as select * from user_tables;
insert into TEST_1228  select * from TEST_1228 ;
insert into TEST_1228  select * from TEST_1228 ;
i ......

OracleÊý¾Ý¿âÓαê

OracleÊý¾Ý¿âÓαêʹÓ÷½·¨
2009-12-30 15:27
SQLÊÇÓÃÓÚ·ÃÎÊOracleÊý¾Ý¿âµÄÓïÑÔ£¬PL/SQLÀ©Õ¹ºÍ¼ÓÇ¿ÁËSQLµÄ¹¦ÄÜ£¬ËüͬʱÒýÈëÁ˸üÇ¿µÄ³ÌÐòÂß¼­, ÏÂÃæÔÚ±¾ÎÄÖн«¶ÔÓαêµÄʹÓýøÐÐһϽ²½â,Ï£Íû¿ÉÒԺʹó¼Ò¹²Í¬Ñ§Ï°½ø²½¡£ 
¡¡¡¡Óαê×ÖÃæÀí½â¾ÍÊÇÓζ¯µÄ¹â±ê¡£ÓαêÊÇSQLµÄÒ»¸öÄڴ湤×÷Çø£¬ÓÉϵͳ»òÓû§ÒÔ±äÁ¿µÄÐÎ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ