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

Oracle 9i ÖÐmergeµÄÎÊÌâ

ÇóÎÊ£º9iÖÐÖ»Ïë¸üв»Ïë²åÈëÔõôд£¿
MERGE INTO user p
USING TEMP tp
ON (p.TYPE = tp.TYPE)
WHEN MATCHED THEN
  UPDATE SET p.SYS_NAME= tp.SYS_NAME
WHEN NOT MATCHED THEN
INSERT ()
VALUES (£©
ÕâÑùд¿Ï¶¨²»¶Ô
È¥µôWHEN NOT MATCHED THEN  Ò²²»¶Ô£¬
ÄÄλ´ó¸çÓкõİ취£¿
Õâ¸öÎÊÌâÆðÔ´£ºÎÒÏë²åÈëÊý¾Ý£¬Èç¹û
1¡¢TYPE ²»Öظ´Ôò²åÈë
2¡¢TYPE ÖØ¸´µÄ »¹Òª¿´ ÁíÒ»¸ö×Ö¶Î ¡°op¡± Èç¹ûopÓÐÖµ Ôò²»½øÐвÙ×÷
3¡¢Èç¹ûopûֵÔò½øÐиüÐÂ

Èç¹ûÊÇ10g¾Í¼òµ¥ÁËÖ±½Ó where ¾ÍÐÐÁË ¿ÉÁ¯µÄÊǿͻ§µÄÊÇ9i Çë¸ßÊִͽÌ
Oracle merge into µÄÓ÷¨Ïê½âʵÀý

×÷Óãºmerge into ½â¾öÓÃB±í¸úÐÂA±íÊý¾Ý£¬Èç¹ûA±íÖÐûÓУ¬Ôò°ÑB±íµÄÊý¾Ý²åÈëA±í£»

Óï·¨£º

MERGE INTO [your table-name] [rename your table here]

USING ( [write your query here] )[rename your query-sql and using just like a table]

ON ([conditional expression here] AND [...]...)

WHEN MATHED THEN [here you can execute some update sql or something else ]

WHEN NOT MATHED THEN [execute something else here ! ]

-------ʵÀý-------


merge into  a
using (select id,name from b ) c
on(a.id=c.id )
when matched then update set a.name=c.name
when not matched then insert (a.id,a.name) values (c.id,c.name);


×÷ÓãºÀûÓñí b ¸úбía £¬Ìõ¼þÊÇa.id=b.id£¬Èç¹ûa±íÖÐûÓиÃÌõ¼þµÄÊý¾Ý¾Í²åÈë¡


Ïà¹ØÎÊ´ð£º

¼±ÎÊÒ»¸öoracle×Ö¶ÎÉèÖõÄÎÊÌâ - Oracle / »ù´¡ºÍ¹ÜÀí

¸÷´óÀÏʦºÃ£¬Çë½ÌÒ»¸öÎÊÌ⣮
ÎÒÉèÖÃÁËÒ»¸öoracle×ֶΣ¬varchar(3000),È»ºó²åÈëÒ»ÌõÊý¾Ý³¤¶È²Å1000,¾Í±¨´íÁË£®È磺net.sf.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
Caused ......

adoÁ¬½ÓoracleµÄ¹ÖÎÊÌâ

ÒÔǰ³ÌÐòºÃºÃµÄ,ÄܽøÐÐÈκβÙ×÷
µ«´Ó×òÌ쿪ʼͻȻÁ¬½ÓÊý¾Ý¿âʧ°Ü,´úÂëÈçÏÂ:
try
{
        ::CoInitialize(NULL);
        hr=m_pConnection.Creat ......

´ÓORACLEµ½DB2µÄSQLÓï¾äÎÊÌâ

ÏÖÔÚÓÐÒ»ORACLEÖеÄSQLÓï¾ä£¬ÐèÒªÒÆÖ²µ½DB2ÖУ¬ÇëÎʸÃSQL¸ÄÈçºÎд
ORACLEÖУº
select floor(months_between(date1,date2)) from A  
date1,date2·Ö±ðΪ±íÖеÄÁ½¸ö×Ö¶Î £¬¶¼ÎªÈÕÆÚÐÍ 
DB2ÖÐÈçºÎʹÓÃÐ ......

ÀÏÎÊÌ⣺OracleÐÐתÁУ¨×Ö·û´®²ð·Ö£©

ÏÖÓÐÒÔÏÂÊý¾Ý£º
ID Name
1 Jack,Tom,Ben
2 Mary,Simth,Tony,Jay
ת»»Îª£º
ID Name
1 Jack
1 Tom
1 Ben
2 Mary
2 Simth
2 Tony
2 Jay
ÒªÇóʹÓÃSQL²éѯÍê³É£¬ÓÉÓÚÌõ¼þÏÞÖÆ£¬²»ÄÜʹÓà ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ