Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : sql

¸ßЧSQL²éѯ֮Ë÷Òý£¨II£©

ÉÏ»ØÎÒÃÇ˵µ½ÆÀ¹ÀÒ»ÌõÓï¾äÖ´ÐÐЧÂÊÖ÷Òª¿´Âß¼­ IO £¨É¶ÊÇÂß¼­ IO £¬É¶ÊÇÎïÀí IO ¼ûÁª»úÎĵµ£©£¬Õâ´ÎÎÒÃǼÌÐø¡£
ÎÒÃÇÏÈ˵˵£¬·µ»Ø¶àÐнá¹ûʱ£¬ÎªÊ²Ã´ SQLServer ÓÐʱ»áÑ¡Ôñ index seek £¬ÓÐʱ»áÑ¡Ôñ index scan ¡£
ÒÔ nonclustered index ΪÀý˵Ã÷¡£
ÏñËùÓеÄË÷Òý B Ê÷Ò»Ñù£¬·Ç¾Û¼¯Ë÷ÒýÊ÷Ò²°üÀ¨ÍêÈ«ÓÉË÷ÒýÊý¾Ý×é³ÉµÄ¸ù½ÚµãºÍÖм伶½Úµã£»µ«ÊǺ;ۼ¯Ë÷ÒýÊ÷²»Í¬µÄÊÇ£¬¾Û¼¯Ë÷ÒýÊ÷Ò¶½Úµã°üº¬µÄÊÇ»ù´¡±íµÄÊý¾ÝÒ³£¨ÎÒÃdz£Ëµ£¬±íµÄÎïÀí´æ´¢Ë³ÐòºÍ¾Û¼¯Ë÷ÒýÏàͬ£¬¾ÍÊÇÕâ¸öÔ­Òò£©,·Ç¾Û¼¯Ë÷ÒýÊ÷Ò¶½ÚµãÊÇË÷ÒýÒ³¡£ SQLServer ͨ¹ý·Ç¾Û¼¯Ë÷Òý²éÕÒÊý¾Ýʱ£¬»áͨ¹ýÕâ¸ö·Ç¾Û¼¯Ë÷Òý¼üֵȥËÑË÷¾Û¼¯Ë÷Òý£¬½ø¶ø¼ìË÷»ù´¡±íÊý¾ÝÐС£
¼ÙÉèÓÐÕâÑùÒ»ÕÅ±í£¬·Ç¾Û¼¯Ë÷ÒýÊ÷Éî¶ÈΪ 2 £¬Ò»²ã¸ù½Úµã£¨ 1 ¸öË÷ÒýÒ³£©£¬Ò»²ãÒ¶½Úµã£¨ 4 ¸öË÷ÒýÒ³£©¡£¾Û¼¯Ë÷ÒýÊ÷Éî¶ÈΪ 3 £¬Ò»²ã¸ù½Úµã£¨ 1 ¸öË÷ÒýÒ³£©£¬Ò»²ãÖм伶½Úµã£¨ 2 ¸öË÷ÒýÒ³£©£¬Ò»²ãÒ¶½Úµã£¨ 250 Ò³£¬Ò²¾ÍÊÇ»ù´¡±íÎïÀí´æ´¢Ò³£©±íµÄÊý¾Ý¼ÙÉè 1w ÐС£×¢£ºËùÓÐÊý¾Ý¾ùΪ¼ÙÉ裬ֻΪ˵Ã÷Ô­Àí¡£
ÎÒÃÇÊ×ÏÈ£¬ÔÙÇ¿µ÷Ò»±é£¬ SQLServer »ñÈ¡Êý¾Ý£¬×ÜÊÇÒÔҳΪµ¥Î»£¬¾ÍËãÊÇÖ»¶ÁȡһÐÐÒ²»á»ñÈ¡ÕûÕÅÒ³ £¨¼û¡¶Ð´ÓÐЧÂ浀 SQL ²éѯ£¨ I £©¡·£©
ÏÖÔÚÓÐÒ»Ìõ¼òµ¥²éѯ ( Èç ......

¸ßЧSQL²éѯ֮Ë÷Òý£¨I£©

´óÐÍϵͳµÄÉú²ú»·¾³£¬Ò»°ãÇé¿öÏ£¬ÎÒÃÇÆÀ¼ÛÒ»Ìõ²éѯÊÇ·ñÓÐЧÂÊ£¬¸ü¶àµÄÊǹØ×¢Âß¼­ IO( ÖÁÓÚΪʲô£¬»ØÍ·²¹Ò»Æª ) ¡£ÎÒÃdz£Ëµ£¬“Òª½¨±ëº·µÄË÷Òý”¡¢“Ҫд¸ßЧµÄ SQL ”£¬Æäʵ×îÖÕÄ¿µÄ¾ÍÊÇÔÚÏàͬ½á¹û¼¯Çé¿öÏ£¬¾¡¿ÉÄܼõÉÙÂß¼­ IO ¡£
1.1      where Ìõ¼þµÄÁÐÉ϶¼µÃÓÐͳ¼ÆÐÅÏ¢¡£
ûͳ¼ÆÐÅÏ¢ SQLServer ¾ÍÎÞ·¨¹ÀË㲻ͬ²éѯ¼Æ»®¿ªÏúÓÅÁÓ£¬¶øÖ»ÄܲÉÓÃ×îÎÈÍ×µÄ Scan £¨²»¹ÜÊÇ table scan »¹ÊÇ clustered index scan £©¡£Ò»°ãÇé¿öÏÂÎÒÃDz»»á·¸ÕâÖÖ´íÎó—— where Ìõ¼þÀﲻʹÓ÷ÇË÷ÒýÁÐÊǸö³£Ê¶¡£Ë÷ÒýÉϵÄͳ¼ÆÐÅÏ¢ÊÇÎÞ·¨É¾³ýµÄ¡£
1.2      ¾¡Á¿²»Ê¹Óò»µÈÓÚ£¨ != £©»òÕß NOT Âß¼­ÔËËã·û¡£
ÕâÌõ¹æÔò±»¹ãΪ´«ËÌ£¬Ô­Òò¾ÝÁª»úÎĵµºÍ°Ù¾´Í¬Ñ§µÄÊé½²£¬Ò²ÊÇ SQLServer ÎÞ·¨ÆÀ¹À²»Í¬²éѯ¼Æ»®¿ªÏúµÄÓÅÁÓ¡£µ«ÊÇ SqlServer2k5 ´ÏÃ÷Á˺ܶ࣬ÊÔÑé·¢ÏÖ¾¡¹ÜÓÃÁË != »òÕß not £¬²éѯ»¹ÊǻᱻÓÅ»¯¡£ÈçÏ£º
create table tb1
(
    col1 int identity ( 1, 1) primary key ,
    col2 int not null,
    col3 varchar ( 64) not null
)
create i ......

¸ßЧSQL²éѯ֮Ë÷Òý£¨III£©

ÏÈ˵˵ÕâЩÎóÇø¡£Ëùν“ÎóÇø”£¬ÓÐһЩÊÇÐÂÊÖºÜÈÝÒ×·¸µÄ´íÎó»òÕߺÜÈÝÒ׺öÂÔµÄÎÊÌ⣬ÁíÍâһЩ£¬ÔòÊÇÏñ“ºÄ×Ó³ÔÁËÑλá±ä³Éòùòð”Ò»Ñù£¬ÈÃÎÒÃÇ´ÓС¾ÍÈÏΪÊÇÕýÈ·µÄÊÂÇé¡£ÈçÏ£º
1¡¢   ±íÉϲ»¹ÜÓõÃ×ÅÓò»×Å£¬¶¼¼Ó¸ö¾Û¼¯Ë÷Òý¡£
ÎÒÃÇÖªµÀ£¬±íÒÔÁ½ÖÖ·½Ê½×éÖ¯ÎïÀí´æ´¢£ºÓоۼ¯Ë÷ÒýµÄ“¾Û¼¯±í”£»Ã»Óоۼ¯Ë÷ÒýµÄ“¶Ñ”¡£ÔÚ¾Û¼¯±íÖУ¬Êý¾ÝÐа´ÕÕ¾Û¼¯Ë÷ÒýµÄ˳Ðò´æ´¢£¨ÕâÒ²ÊÇΪɶһÕűí×î¶àÖ»ÄÜÓÐÒ»¸ö¾Û¼¯Ë÷ÒýµÄÔ­Òò£©£»¶ÑÖУ¬Êý¾ÝÐеĴ洢¿ÉÒÔÈÏΪÊDz»È·¶¨µÄ¡£
ÔÚż¡¶Ð´ÓÐЧÂ浀 SQL ²éѯ£¨ II £©¡·ÖÐÔø¾­½éÉܹý DB ÒýÇæÈçºÎÔÚ¾Û¼¯±íÖÐͨ¹ý·Ç¾Û¼¯Ë÷Òý²éÕÒÄ¿±êÊý¾Ý£º´Ó·Ç¾Û¼¯Ë÷ÒýÊ÷¸ù¿ªÊ¼ seek £¬²éÕÒµ½Ä¿±êË÷ÒýÐУ¬È»ºóͨ¹ýË÷ÒýÐÐÉÏ´æ´¢µÄ¾Û¼¯Ë÷Òý¼üÖµ£¬ÅÀ¾Û¼¯Ë÷ÒýÊ÷£¬²¢×îÖÕͨ¹ý¾Û¼¯Ë÷ÒýÐÐÉϵÄÖ¸ÕëÄõ½Ä¿±êÊý¾Ý¡£
µ«ÊǶÑÉϵķǾۼ¯Ë÷Òý´æ´¢µÄ²»ÊǾۼ¯Ë÷Òý¼üÖµ£¬Ëü´æ´¢µÄÊÇÖ¸ÏòÄ¿±êÐеÄÖ¸Õë¡£Ò²¾ÍÊÇ˵£¬Èç¹ûÔÚͬÑùµÄ±íÊǶѣ¬Í¨¹ý·Ç¾Û¼¯Ë÷Òý seek Êý¾Ý½«Ê¡µôÅÀ¾Û¼¯Ë÷ÒýÊ÷µÄËðºÄ£¬¶ø¿ÉÒÔÖ±½Óͨ¹ý·Ç¾Û¼¯Ë÷ÒýÐÐÉϵÄÐÐÖ¸ÕëÖ±½ÓÄõ½Ä¿±êÊý¾Ý¡£Ò²¾ÍÊÇ˵£¬ÔÚijЩÇé¿öÏ£¬Ê¹ÓöѿÉÒÔÌá¸ßϵͳЧÂÊ¡£
Õâ¸ö“ijЩÇé¿ö”£¬¾ÍÊÇ ......

SQL²é±íÃû¡¢×Ö¶ÎÃû¡¢±í˵Ã÷¡¢×Ö¶Î˵Ã÷

SQL ²é¿´ËùÓбíÃû£º
select name from sysobjects where type='U'
²éѯ±íµÄËùÓÐ×Ö¶ÎÃû£º
Select name from syscolumns Where ID=OBJECT_ID('±íÃû')
select * from information_schema.tables
select * from information_schema.views
select * from information_schema.columns
ACCESS
²é¿´ËùÓбíÃû£º
select name from MSysObjects where type=1 and flags=0
MSysObjectsÊÇϵͳ¶ÔÏó£¬Ä¬ÈÏÇé¿öÊÇÒþ²ØµÄ¡£Í¨¹ý¹¤¾ß¡¢Ñ¡Ïî¡¢ÊÓͼ¡¢ÏÔʾ¡¢ÏµÍ³¶ÔÏó¿ÉÒÔʹ֮ÏÔʾ³öÀ´¡£
SQL²éѯ±íµÄ±¸×¢ËµÃ÷
SELECT ±íÃû = case when a.colorder = 1 then d.name
                   else '' end,
       ±í˵Ã÷ = case when a.colorder = 1 then isnull(f.value, '')
                     else '' end
from syscolumns a
       inner join sysobjects d
     &nbs ......

SQL Server 2008 ϵı¸·ÝºÍÈÕÖ¾ÊÕËõ

ÔÚSQL Server 2008Ï£¬ÍøÉÏÒÔǰÁ÷ÐеĽضÏÈÕÖ¾²¢ÊÕËõÎļþµÄ·½·¨²»ÊʺÏÁË£¬±¨Óï·¨´íÎó¡£
ͬʱÒòΪÎÒµÄÊý¾Ý¿âÈÕÖ¾Ôö³¤·Ç³£¿ì£¬´ó¸ÅÿÌìÔÚ1GÒÔÉÏ£¬Òò´Ë±ØÐë¶ÔÆä½øÐÐÊÕËõ¡£
¾­¹ýÔÚϵͳÉϵIJâÊÔ£¬¸Ð¾õÓÃSQL SERVERµÄά»¤¼Æ»®¸ü¿ÉÐУ¬ÏÖ½«²Ù×÷·½Ê½¼ò½éÈçÏ£º
×¢£ºÏÂÃæµÄ˵Ã÷ÖÐÒ²Ìáµ½ÁËʹÓòîÒ챸·Ý£¬ÒòΪÊý¾Ý¿âÎļþÔö³¤Ò²·Ç³£¿ì£¬Òò´Ë´Ë´¦Ò²ÉÔ×÷˵Ã÷¡£¹Ø×¢ÊÕËõÊý¾Ý¿âÈÕÖ¾ÎļþµÄ¿ÉÒÔºöÂԴ˲¿·ÖÄÚÈÝ¡£
1¡¢´´½¨Î¬»¤¼Æ»®£º

2¡¢´´½¨×Ӽƻ®
a¡¢ÍêÕû±¸·Ý£¬Ã¿ÖÜÒ»´Î

b¡¢²îÒ챸·Ý£¬Ã¿ÌìÒ»´Î£¬»òÿÌì¶à´Î

c¡¢ÈÕÖ¾±¸·Ý£¬Ã¿ÌìÒ»´Î

d¡¢ÊÕËõÊý¾Ý¿â

e¡¢É¾³ý±¸·ÝÎļþ£¬É¾³ýËÄÖÜÒÔǰµÄ±¸·ÝÎļþ£¬Ã¿ÌìÖ´ÐÐ

f¡¢Çå³ýÈÕÖ¾±¸·ÝÎļþ£¬Ã¿ÌìÖ´ÐÐ

3¡¢¹ØÓÚÈÕÖ¾ÎļþµÄÔö³¤
ÈçÉÏËùÊö£¬ÈÕÖ¾ÎļþÿÌì½øÐб¸·Ý£¬Í¬Ê±Ã¿ÌìÇå³ý¾ÉµÄ±¸·ÝÎļþ£¬ÕâÑùÈÕÖ¾ÎļþËäÈ»×öÁ˱¸·Ý£¬µ«²»»á±£ÁôÌ«¶à¡££¨µ±È»£¬Èç¹ûÄãÐèÒª±£ÁôÈÕÖ¾Îļþ£¬Ôò¿ÉÒÔʹÓÃÓëÊý¾Ý¿â±¸·ÝÎļþÏàͬµÄÇå³ý²ßÂÔ£©
ÈÕÖ¾ÎļþÔÚ±¸·ÝÒÔºó£¬ÔÚÊÕËõÊý¾Ý¿âʱ£¬¾Í¿ÉÒÔ»ØÊÕÒѱ¸·ÝµÄÈÕÖ¾ÎļþµÄ¿Õ¼ä¡£µ«Îļþ´óС²»»á¼õÉÙ£¬Ö»ÊÇÔö¼ÓÁË¿ÉÓÿռ䡣µ«ÕâÑùÊÇ¿ÉÒÔÂú×ãÎÒÃǵÄÒªÇóµÄ£º±ÈÈçÿÌì¿ÉÄܲúÉú´óÔ¼1GµÄÈÕÖ¾£¬¶øÃ¿´Î±¸·Ý²¢»ØÊ ......

¾­µäSQLÓï¾ä

 Ò»¡¢»ù´¡
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡¢ËµÃ÷£º±¸·Ýsql server
--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- ¿ªÊ¼ ±¸·Ý
BACKUP DATABASE pubs TO testBack
4¡¢ËµÃ÷£º´´½¨Ð±í
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
¸ù¾ÝÒÑÓÐµÄ±í´´½¨ÐÂ±í£º
A£ºcreate table tab_new like tab_old (ʹÓÃ¾É±í´´½¨Ð±í)
B£ºcreate table tab_new as select col1,col2… from tab_old definition only
5¡¢ËµÃ÷£ºÉ¾³ýбí
drop table tabname
6¡¢ËµÃ÷£ºÔö¼ÓÒ»¸öÁÐ
Alter table tabname add column col type
×¢£ºÁÐÔö¼Óºó½«²»ÄÜɾ³ý¡£DB2ÖÐÁмÓÉϺóÊý¾ÝÀàÐÍÒ²²»Äܸı䣬ΨһÄܸıäµÄÊÇÔö¼ÓvarcharÀàÐ͵ij¤¶È¡£
7¡¢ËµÃ÷£ºÌí¼ÓÖ÷¼ü£º Alter table tabname add primary key(col)
˵Ã÷£ºÉ¾³ýÖ÷¼ü£º Alter table tabname drop primary key(col)
8¡¢ËµÃ÷£º´´½¨Ë÷Òý£ºcreate [unique] index idxname on tabname(col….)
ɾ³ýË÷Òý£ºdrop index idxname
×¢£º ......
×ܼǼÊý:4346; ×ÜÒ³Êý:725; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [106] [107] [108] [109] 110 [111] [112] [113] [114] [115]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ