sqlserver ÐÔÄÜÓÅ»¯££Join˵Ã÷
ÓÉÓÚ¹¤×÷ÐèÇó£¬Òª¶Ô¸ºÔðµÄ²ú Æ·×öµãÐÔÄÜÓÅ»¯£¬ÔÚÍøÉÏÕÒµ½ÁËÏà¹ØµÄ¶«Î÷£¬Äà ³öÀ´Óë´ó¼Ò·ÖÏí£º
¿´µ½ºÜ¶àÅóÓѶÔÊý¾Ý¿âµÄÀí½â¡¢ÈÏʶ»¹ÊÇûÓÐÍ»ÆÆÒ»¸öÆ¿¾±£¬¶øÕâ¸öÆ¿¾±ÍùÍùÖ»ÊÇÒ»²ã´°Ö½£¬Ô½¹ýÁËÄ㽫¿´µ½Ò»¸öÐÂÊÀ½ç¡£
04¡¢05Äê×öÏîÄ¿µÄʱºò£¬ÓÃSQL Server 2000£¬ºËÐÄ±í£¨´ó²¿·ÖʹÓÃÆµ·±µÄ¹Ø¼ü¹¦ÄÜÿ´Î¶¼ÒªÓõ½£©´ïµ½ÁË800ÍòÊý¾ÝÁ¿£¬ºÜÔçÒÔǰ²é¹ýһЩÏà¹Ø±í£¬ÓеĴﵽÁË3000¶àÍò£¬´ÅÅÌʹÓõĹâÏËÅÌ£¬100G¿Õ¼ä£¬Ã¿ÖܱØÐ뱸·Ý×ªÒÆÊý¾Ý£¬·ñÔò100G¿Õ¼äÒ»ÖÜ»áÂúµô£¬Õâ¸öϵͳ¼¸ÄêÀ´£¬Ä¿Ç°ÈÔÈ»±£³Ö·Ç³£Á¼ºÃµÄÐÔÄÜ¡£»¹Ìý˵¹ýÅóÓѵÄSQL Server 2000Êý¾Ý¿â¹¤×÷ÔÚ¼¸Ê®TBµÄ»·¾³Ï£¬¸ß²¢·¢Á¿£¬¶ÔÕâÖÖ¼¶±ðµÄ¼ÝÔ¦ÄÜÁ¦ÎÒ»¹ÊDzîµÄºÜÒ£Ô¶¡£
Ïëµ±Ä꣬ҲÊÇÒ»ÌáSQL Server£¬¾Í¾õµÃËüµÄÐÔÄÜû·¨¸úOracleÏà±È£¬Ò»Ìáµ½´óÊý¾Ý´¦Àí¾ÍÏëµ½Oracle¡£×Ô¼ºÒ»Â·×ßÀ´£¬ÔÚ±¾µØblogÉϼǼÁ˺ܶàÓÅ»¯·½ÃæµÄpost£¬¶ÔµÄ´íµÄ¶¼ÓУ¬Ã»ÓÐʱ¼äϵÁеÄÕûÀí³öÀ´£¬ÕâÆªÎÄÕ½«join·½·¨µÄ¸ÅÄîÉÔ΢ÕûÀíÔÚÒ»Æð£¬¸ø´ó¼Ò¸ö²Î¿¼¡£Í¨¹ý²é×ÊÁÏÁ˽âÀïÃæÌáµ½µÄ¸÷ÖÖ¸ÅÄÔÚʵ¼ÊÖв»¶ÏÑéÖ¤×ܽᣬÍêÈ«¿ÉÒÔ¶ÔÊý¾Ý¿âÒ»²½²½ÉîÈëÀí½âÏÂÈ¥µÄ¡£
ÎÒÖ»¶ÔSQL Server 2000±È½ÏÁ˽⣬µ«Õâ²¢²»×è°ÎÒÔÚOracle¡¢MySql½øÐÐSQLµ÷ÓÅ¡¢²úÆ·¼Ü¹¹£¬ÒòΪÔÚÊý¾Ý¿âÀíÂÛÔÀíÉÏ£¬¸÷´óÊý¾Ý¿â»ù±¾³öÈë²»´ó£¬¶ÔÊý¾Ý¿âµÄÉîÈëÀí½â£¬Ò²²»»áÓ°ÏìÄã¼Ü¹¹Éè¼ÆË¼Ïë±ä»µ£¬Ïà·´¸øÄã´øÀ´µÄÊǸüÉî²ã´ÎµÄ˼¿¼¡£
¹ØÓÚÖ´Ðмƻ®µÄ˵Ã÷
ÔÚSQL Server²éѯ·ÖÎöÆ÷µÄQuery²Ëµ¥ÖÐÑ¡ÔñShow Execution Plan£¬ÔËÐÐSQL²éѯÓï¾ä£¬ÔÚ½á¹û´°¿ÚÖÐÓÐGrid¡¢Execution Plan¡¢MessagesÈý¸öTab¡£¿´Í¼ÐÎÐÎʽµÄÖ´Ðмƻ®£¬Ë³ÐòÊÇ´ÓÓÒµ½×ó£¬ÕâÒ²ÊÇÖ´ÐеÄ˳Ðò¡£Ö´Ðмƻ®ÖеÄÿһ¸öͼ±ê±íʾһ¸ö²Ù×÷£¬Ã¿Ò»¸ö²Ù×÷¶¼»áÓÐÒ»¸ö»ò¶à¸öÊäÈ룬Ҳ»áÓÐÒ»¸ö»ò¶à¸öÊä³ö¡£ÊäÈëºÍÊä³ö£¬ÓпÉÄÜÊÇÒ»¸öÎïÀíÊý¾Ý±í¡¢Ë÷ÒýÊý¾Ý½á¹¹£¬»òÕßÊÇÖ´Ðйý³ÌÖеÄһЩÖмä½á¹û¼¯/Êý¾Ý½á¹¹¡£Êó±êÒÆ¶¯µ½Í¼±êÉÏ£¬»áÏÔʾÕâ¸ö²Ù×÷µÄ¾ßÌåÐÅÏ¢£¬ÀýÈçÂß¼ºÍÎïÀí²Ù×÷Ãû³Æ¡¢¼Ç¼µÄÊýÁ¿ºÍ´óС¡¢I/O³É±¾¡¢CPU³É±¾¡¢²Ù×÷µÄ¾ßÌå±í´ïʽ£¨²ÎÊýArgument£©¡£Êó±êÒÆ¶¯µ½Á¬½Ó¼ýÍ·ÉÏ£¬»áÏÔʾ¼ýÍ·Æðʼ¶ËµÄ²Ù×÷Êä³ö½á¹û¼¯µÄ¼Ç¼Êý¡¢¼Ç¼µÄ´óС£¬Ò»°ãÇé¿öÏ¿ÉÒÔ½«Õâ¸öÊä³ö½á¹û¼¯Àí½âΪ¼ýÍ·½áÊø¶ËµÄÊäÈë¡£
ÁíÍâ¹ØÓÚÖ´Ðмƻ®µÄһЩ²¹³ä˵Ã÷£º1. Ö´Ðмƻ®ÖÐÏÔʾµÄÐÅÏ¢£¬¶¼ÊÇÒ»¸ö“ÆÀ¹À”µÄ½á¹û£¬²»ÊÇ100%׼ȷµÄÐÅÏ¢£¬ÀýÈç¼Ç¼ÊýÁ¿ÊÇÈ¡×Ôͳ¼ÆÐÅÏ¢£¬I/O³É±¾¡¢CPU³É±¾À´×ÔÖ´Ðмƻ®Éú³É¹ý³ÌÖлùÓÚͳ¼ÆÐÅÏ¢µÈµÃ³öµÄÆÀ¹À½á¹û¡£2. Ö´Ðмƻ®²»Ò»¶
Ïà¹ØÎĵµ£º
1.oracle»·¾³
create table test
(
id number(4),
name varchar2(20)
)
ÔÚÒ»¸ösessionÖÐ
insert into test values(1,'aa');
ÔÚÁíÒ»¸ösessionÖÐ
select * from test1;
²éѯû±»×èÈû
2.sqlserver»·¾³
ÔÚÒ»¸ösessionÖÐ
insert into test values(1,'aa');
ÔÚÁíÒ»¸ösessionÖÐ
select * from test1;
²éѯ±»×èÈû(Ê ......
sqlserver£ºupdate Table_A set Table_A.col1 = (select Table_B.col1 from Table_B where Table_A.col2 = Table_B.col2)
Access: UPDATE Table_ A, Table_B SET Table_ A.×Ö¶Î2 = Table_ B.×Ö¶Î2
WHERE Table_ A.񅧏=Table_ A.񅧏;
×Ô¼º¼ÇÏ£¬ÌáÐÑ×Ô¼º ......
Oracle´æ´¢¹ý³Ìת³ÉSqlserver´æ´¢¹ý³Ì
1.ÈÕÆÚת»»
Oracle£º TO_NUMBER(TO_CHAR(SYSDATE, 'YYYYMMDD'))
SqlServer£ºCAST(CONVERT(CHAR(8),GETDATE(), 112) AS INT)
×¢£ºÆäÖБYYYYMMDD’¸ñʽ ¶ÔÓ¦112
2.ROWIDת»»
Oracle£º ROWID
SqlServer: PRIMARY KEY(±íÖ÷¼ü)
3.ROWNUM ......
select a.UserName Óû§Ãû,b.LoginName ºÅÂë,c.MenuTitle ±êÌâ,max(a.AccessTime)·ÃÎÊʱ¼ä from JfAccessLog a,OaUser b,JfMenu c where CONVERT(char,a.AccessTime,112)=CONVERT(char,GETDATE(),112) and a.UserId=b.UserId and a.MenuId=c.MenuId and a.MenuId=@menu group by a.UserName,b.LoginName,c.Menu ......
ÔÚÆ½Ê±µÄ¹¤×÷¹ý³ÌÖУ¬×÷ΪDBA½ÇÉ«¹ÜÀíÊý¾Ý¿â£¬Í·ÄÔÖеÄÓ¡ÏóÍùÍùÊÇÊý¾Ý¿âʵÀýÃû³Æ£¬¶ø²»»áÈ¥¹ØÐÄServerµÄIP£¬¶ø×÷ΪDeveloperµÄ½ÇÉ«£¬ËûÃÇÍùÍùÏëÖªµÀÖªµÀServer IpºÍ¶Ë¿ÚºÅ¡£ËùÒÔ£¬DBA»á¾³£±»Îʼ°µ½£ºXXXʵÀýµÄIPºÍ¶Ë¿ÚºÅÊÇʲô£¿
Õâ¸öÎÊÌ⣬µ±È»ÎÒÃÇ¿ÉÒÔLoginµ½OS²é¿´IP¡¢Ê¹ÓÃÅäÖÆ¹ÜÀí¹¤¾ß»ñÈ¡µ½¶Ë¿ÚºÅ¡£µ«ÊÇ£¬Õâ¸ö·½·¨·Ç ......