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

ÈçºÎÓà SQL Tuning Advisor (STA) ÓÅ»¯SQLÓï¾ä


ÔÚOracle10g֮ǰ£¬ÓÅ»¯SQLÊǸö±È½Ï·ÑÁ¦µÄ¼¼Êõ»î£¬²»Í£µÄ·ÖÎöÖ´Ðмƻ®£¬¼Óhint£¬·ÖÎöͳ¼ÆÐÅÏ¢µÈµÈ¡£ÔÚ10gÖУ¬OracleÍÆ³öÁË×Ô¼ºµÄSQLÓÅ»¯¸¨Öú¹¤¾ß: SQLÓÅ»¯Æ÷(SQL Tuning Advisor £ºSTA)£¬ËüÊÇеÄDBMS_SQLTUNE°ü¡£Ê¹ÓÃSTAÒ»¶¨Òª±£Ö¤ÓÅ»¯Æ÷ÊÇCBOģʽÏ¡£
Ö´ÐÐDBMS_SQLTUNE°ü½øÐÐsqlÓÅ»¯ÐèÒªÓÐadvisorµÄȨÏÞ£º
SQL> create user dave identified by dave;
Óû§ÒÑ´´½¨¡£
SQL> grant connect,resource to dave;
ÊÚȨ³É¹¦¡£
SQL> grant advisor to dave;
ÊÚȨ³É¹¦¡£
ÏÂÃæ¼òµ¥½éÉÜÒ»ÏÂÈçºÎÓÅ»¯Ò»ÌõÕÒµ½µÄÎÊÌâÓï¾ä¡£
create table bigtab as select rownum as "id",a.* from sys.all_objects a;
create table smalltab as select rownum as "id", a.* from sys.all_tables a;
È»ºó¶àÔËÐм¸´ÎÏÂÃæµÄ½Å±¾£¬Ôö¼Ó±íÀïµÄÊý¾Ý£º
insert into bigtab select rownum as "id",a.* from sys.all_objects a;
insert into smalltab  select rownum as "id", a.* from sys.all_tables a;
ÕâÀï´´½¨Ò»ÕÅ´ó±íºÍÒ»ÕÅС±í£¬²¢ÇÒ¶¼Ã»ÓÐË÷Òý£¬ÏÂÃæÖ´ÐÐÒ»¸ö²éѯ£º
SQL> set timing on
SQL> set autot on
SQL> select count(*) from bigtab a, smalltab b where a.object_name=b.table_name;
  COUNT(*)
----------
   2141537
ÒÑÓÃʱ¼ä:  00: 00: 20.05
Ö´Ðмƻ®
----------------------------------------------------------
Plan hash value: 3089226980
--------------------------------------------------------------------------------
| Id  | Operation           | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------


Ïà¹ØÎĵµ£º

Sql server With

with HostDevice as (----ÉÌ»§Ö÷»ú
select TerminalID ,Deviceid hostDeviceid ,Device.ModelID,Device.SN HostSN,Device.MerchantID,Device.InstallAddress,Device.SoftVersion
from Device
join model HostM on Device.ModelID=HostM.ModelID and HostM.Category in(0,3,4,5,6,8)
--where TerminalID is not null
) ......

SQL Server 2005ÖеÄT SQLÔöÇ¿(2) ¿ìÕÕ¸ôÀë

¿ìÕÕ¸ôÀë Snapshot Isolation
1¡¢Ð´Èë³ÌÐò²»»á×è°­¶ÁÈ¡³ÌÐò
2¡¢ÐµĸôÀë¼¶±ðÌṩÁËÒÔÏÂÓŵ㣺
1) Ìá¸ßÁËÖ»¶ÁÓ¦ÓóÌÐòµÄÊý¾Ý¿ÉÓÃÐÔ
2) ÔÊÐíÔÚOLTP»·¾³ÖÐÖ´ÐзÇ×èÖ¹¶ÁÈ¡²Ù×÷
3) ¿É¶ÔдÈëÊÂÎñ½øÐÐ×Ô¶¯µÄÇ¿ÖÆ³åÍ»¼ì²â
3¡¢ÑÝʾ´úÂë
CREATE DATABASE demo2
GO
USE demo2
ALTER DATABASE demo2 SET allow_snapsho ......

SQL Server 2005ÖеÄT SQLÔöÇ¿(7) ͨÓñí±í´ïʽCTE

ͨÓñí±í´ïʽ Common Table Expressions
ͨÓñí±í´ïʽ£¨CTE£©ÊÇÒ»¸ö¿ÉÒÔÓɶ¨ÒåÓï¾äÒýÓõÄÁÙʱ±íÃüÃûµÄ½á¹û¼¯¡£ÔÚËûÃǵļòµ¥ÐÎʽÖУ¬Äú¿ÉÒÔ½«CTEÊÓΪÀàËÆÓÚÊÓͼºÍÅÉÉú±í»ìºÏ¹¦ÄܵĸĽø°æ±¾¡£ÔÚ²éѯµÄfrom×Ó¾äÖÐÒýÓÃCTEµÄ·½Ê½ÀàËÆÓÚÒýÓÃÅÉÉú±íºÍÊÓͼµÄ·½Ê½¡£Ö»Ð붨ÒåCTEÒ»´Î£¬¼´¿ÉÔÚ²éѯÖжà´ÎÒýÓÃËü¡£ÔÚCTEµÄ¶¨ÒåÖУ¬¿ÉÒÔÒ ......

SQL Server ÅÅÐòʵÏÖº¯Êýϸ˵

ÅÅÃûº¯ÊýÊÇSQL Server2005мӵŦÄÜ¡£ÔÚSQL Server2005ÖÐÓÐÈçÏÂËĸöÅÅÃûº¯Êý£º
¡¡¡¡1. row_number
¡¡¡¡2. rank
¡¡¡¡3. dense_rank
¡¡¡¡4. ntile
¡¡¡¡Ò»¡¢row_number
¡¡¡¡row_numberº¯ÊýµÄÓÃ;ÊǷdz£¹ã·º£¬Õâ¸öº¯ÊýµÄ¹¦ÄÜÊÇΪ²éѯ³öÀ´µÄÿһÐмǼÉú³ÉÒ»¸öÐòºÅ¡£row_numberº¯ÊýµÄÓ÷¨ÈçÏÂÃæµÄSQLÓï¾äËùʾ£º
¡¡¡¡sel ......

SQL Server 2005È«ÎļìË÷¼¼ÊõÔÚÍøÕ¾ÉϵÄÓ¦ÓÃʵ¼


Ò»¡¢Ç°ÑÔ
“ÈËÀàʧȥËÑË÷£¬ÊÀ½ç½«»áÔõÑù?”£¬Í¬Ñù£¬ºÜÄÑÏëÏóÒ»¸öÓµÓм«´óÐÅÏ¢Á¿µÄÐÐÒµÍøÕ¾ÃÅ»§Ã»ÓÐÕ¾ÄÚÈ«ÎÄËÑË÷½«»á³öÏÖÔõÑùµÄ¾ÖÃæ£¬ÍøÕ¾È«ÎļìË÷¶ÔÓÚÍÚ¾òÍøÕ¾ÐÅÏ¢ºÍÕûºÏÍøÕ¾×ÊÔ´µÄ¼ÛÖµÊDz»ÑÔ¶øÓ÷µÄ¡£ÎÒÃÇ¿´µ½£¬Í¨ÓÃÐ͵ÄËÑË÷ÒýÇæÒѾ­³ÉΪÁË»¥ÁªÍøÊÀ½çµÄÃÅ»§£¬¶ø¶ÔÓÚÒ»¸öÐÅÏ¢Á¿¼«Æä·á¸»µÄÍøÕ¾¶øÑÔ£¬È«ÍøËÑË÷»òÐ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ