SQL ÎÊÌâ - MS-SQL Server / »ù´¡Àà
ÓÐ2¸öÊý¾Ý±íAÓëB£¬ÈçºÎ²¹³äAÖÐûÓÐ,BÖÐÓеÄÊý¾Ý£¬Ê¹A±íÊý¾ÝÍêÕû£¿ÇëдϾßÌåÔ´´úÂë
SQL code:
insert A select * from A right join B on A.key=b.key where A.key is null
select * from B left join A on B.id=A.id where A.id in null
SQL code:
insert A select B.* from A right join B on A.key=b.key where A.key is null
SQL code:
/*
1.MERGE Óï¾ä
ÔÚ SQL Server 2008 ÖУ¬¿ÉÒÔʹÓà MERGE Óï¾äÔÚÒ»ÌõÓï¾äÖиù¾ÝÓëÔ´±íÁª½ÓµÄ½á¹û¶ÔÄ¿±ê±íÖ´ÐÐ INSERT¡¢UPDATE »ò DELETE ²Ù×÷¡£È磺ʹÓÃÒ»¸öÓï¾äÓÐÌõ¼þµØÔÚµ¥¸öÄ¿±ê±íÖвåÈë»ò¸üÐÂÐУ¬Èç¹ûÄ¿±ê±íÖдæÔÚÏàÓ¦ÐУ¬Ôò¸üÐÂÒ»¸ö»ò¶à¸öÁУ»·ñÔò£¬»á½«Êý¾Ý²åÈëÐÂÐС£Ê¹ÓøÃÓï¾ä»¹¿ÉÒÔͬ²½Á½¸ö±í£¬¸ù¾ÝÓëÔ´Êý¾ÝµÄ²î±ðÔÚÄ¿±ê±íÖвåÈë¡¢¸üлòɾ³ýÐС£
MERGE Óï·¨°üÀ¨ÈçÏÂÎå¸öÖ÷Òª×Ӿ䣺
MERGE ×Ó¾äÓÃÓÚÖ¸¶¨×÷Ϊ²åÈë¡¢¸üлòɾ³ý²Ù×÷Ä¿±êµÄ±í»òÊÓͼ¡£
USING ×Ó¾äÓÃÓÚÖ¸¶¨ÒªÓëÄ¿±êÁª½ÓµÄÊý¾ÝÔ´¡£
ON ×Ó¾äÓÃÓÚÖ¸¶¨¾ö¶¨Ä¿±êÓëÔ´µÄÆ¥ÅäλÖõÄÁª½ÓÌõ¼þ¡£
WHEN ×Ó¾äÓÃÓÚ¸ù¾Ý ON ×Ó¾äµÄ½á¹ûÖ¸¶¨ÒªÖ´ÐеIJÙ×÷¡£
OUTPUT ×Ó¾äÕë¶Ô¸üС¢²åÈë»òɾ³ýµÄÄ¿±ê¶ÔÏóÖеÄÿһÐзµ»ØÒ»ÐС£
*/
IF OBJECT_ID (N'dbo.Purchases', N'U') IS NOT NULL
DROP TABLE dbo.Purchases;
GO
CREATE TABLE dbo.Purchases (
Pro
Ïà¹ØÎÊ´ð£º
ÎÒÓжà¸ö±íA B C ½á¹¹ÊÇÒ»ÑùµÄ£¬¶¼ÓÐ2¸ö×Ö¶ÎnameºÍcontent,ÎÒÒªËÑË÷ËùÒÔ±íËùÓÐ×Ö¶ÎÖаüº¬¡°Öйú¡±µÄÄÚÈÝ Õâ¸öSQLÓï¾äÔõôд
ÈçºÎ½«¶à¸ö±íµÄ²éѯ½á¹ûÁ¬³ÉÒ»¸ö±í Õâ¸öSQLÓï¾äÔõôд ±íµÄ½á¹¹ÊÇÒ»ÑùµÄ
ÀýÈç£ ......
ÏÖÔÚÓÐÁ½ÕÅ±í£ºÎÄÕÂÖ÷±íA(articleId,articleTitle)£¬ÎÄÕÂÆÀÂÛ±íB(commentId,articleId,commentTitle)
ÏÖÔÚÎÒÏëʵÏÖÕâÑùµÄ¹¦ÄÜ£ºÁгöÎÄÕÂÁÐ±í£¬ÆäÖÐÿƪÎÄÕ±êÌâÏÂÃæÁгö´ËÎÄÕµÄǰ2¸öÎÄÕÂÆÀÂÛ£¬ÇëÎÊsqlÓï¾äÔõôд°¡ ......
tab1 ×Ö¶Î:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 ×Ö¶Î:goodsid,goodskind£¨ÉÌÆ·ÀàÐÍ£©
tab3 ×Ö¶Î:goodskind£¨ÉÌÆ·ÀàÐÍ£©,kindname
½á¹û£º
µÃµ½ÉÌÆ·ÀàÐÍÔÚÒ»¶Îʱ¼ä ......
3̨µçÄÔ£¬ÆäÖÐһ̨×÷ΪMYSQL·þÎñÆ÷£¬ÁíÍâ2̨ΪTOMCAT·þÎñÆ÷¡£
MYSQL·þÎñÆ÷ÀïÓÐÒ»Ìõ¼Ç¼£¬ IDΪ10.
ÏÖÔÚ2̨TOMCATͬʱ£¨100%£©·¢ÆðÐÞ¸ÄMYSQLÀïIDΪ10µÄÄÇÌõ¼Ç¼£¬±ÈÈçÐ޸ĴËID¼Ç¼ÀïijһÏîµÄÄÚÈÝ¡£ ±ÈÈçTOMCAT 1Ò ......
ÎÒ¾õµÃmysqlºÍsqlserverÓй²Í¬µÄµØ·½£º
ÓиöÎÊÌâÊǹØÓÚ±íµÄËøÎÊÌ⣺
½ø³ÌA ½ø³ÌB
select * from user where id in lock share mode£¨¹²ÏíËø)
&nb ......