SQL SERVER ÈçºÎ¶ÁÈ¡Ò³ÃæÉϵÄÊý¾Ý
CSDNÉÏÓÐƪÌû×Óhttp://topic.csdn.net/u/20100223/15/644e6212-9fdc-42de-81ad-785d28ed71d3.html
ÌÖÂÛ²éѯ¼Æ»®¶ÁÈ¡Ë÷ÒýÒ³µÄÎÊÌâ¡£
Ö÷ÒªÎÊÌâÊÇ£º ÔÚÒ»ÕŽ¨Óоۼ¯Ë÷Òý£¨Ã»ÓÐÆäËü·Ç¾Û¼¯Ë÷Òý£©µÄ±íÖ´ÐÐselect count(*) ¡£²éѯÏÔʾɨÃèÁËËùÓеÄË÷ÒýÖмä²ãÒ¶¡£´ÓÀíÂÛÉϽ²£¬ÓÉÓÚÿ¸öÊý¾ÝÒ³¶¼¼Ç¼×ÅËüµÄÉÏÒ»¸öpageºÍÏÂÒ»¸öpage,ÄÇô×îСµÄio¶ÁÈ¡Ó¦¸ÃÊÇ:
¶Á¸ùÒ³--->¶Á×îСµÄÖмäÒ³--->¶ÁÊý¾ÝÒ¶×Ó---->ÒÀ´ÎÍùºó¶ÁÈ«²¿Êý¾ÝÒ³.
µ«Êµ¼ÊÉÏÈ´ÊǶÁÈ¡È«²¿µÄË÷ÒýÖмäÒ³¡£
Ìû×ÓÖбȽϾ«²ÊµÄ»Ø¸´£º
Ê×ÏÈÂ¥Ö÷µÄ˵·¨²»¹»×¼È·£¬¸ù¾ÝÎҵIJâÊÔ½á¹ûÀ´¿´£¬¸ü׼ȷµÄ˵·¨Ó¦¸ÃÊÇsql serverÔÚ×öË÷Òýȫɨ(index full scan)ʱ£¬»áÏÈɨÃèÈ«²¿µÄlevel 1µÄ½Úµã£¬È»ºóÔÚɨÃè´¦ÓÚlevel 0µÄÒ¶½Úµã¡£Ò²¾ÍÊÇ˵һ´ÎË÷ÒýȫɨµÄ˳ÐòÊÇ£¨Õâ¸ö˳Ðò¶ÔÓÚclustered indexºÍÆÕͨindex¶¼ÊÇÒ»ÑùµÄ£©£º
¶Á¸ùÒ³--->¶Á×îСµÄÖмäÒ³£¨level 1ÒÔÉϵIJ㣩--->ÒÀ´Î¶Álevel 1µÄËùÓнڵãµÄË÷ÒýÒ³---->¶ÁÈ«²¿Êý¾ÝÒ³
ÉÏÊö˳Ðò¿ÉÒÔÔÚ½«Êý¾Ý±íË÷Òý²ãÊýÔö¼Óµ½3²ãÒÔÉÏʱµÃµ½ÑéÖ¤¡£
ʵ¼ÊÉÏÎÒ¾õµÃsql serverÕâÑù×öÊǺÜÓеÀÀíµÄ£¬Â¥Ö÷ÈÏΪµÄÊÇËù¶ÁµÄÒ³Ô½ÉÙ£¬io¾ÍԽС£¬ÕâÊDz»¶ÔµÄ¡£¶ÔÓÚsql serverÀ´Ëµ£¬Ò»´Îio²¢²»Ò»¶¨Ö»¶ÁÈ¡Ò»¸öÒ³£¬ºÜ¶àʱºòÌرðÊÇ×ö±íȫɨ»òË÷Òýȫɨʱ£¬sql server¶¼»á¾¡Á¿µÄÈÃÒ»´Îio¶ÁÈ¡¾¡¿ÉÄܶàµÄÊý¾ÝÒ³£¬ÕâÑù²ÅÄܽÏÉÙioµÄ´ÎÊý¡£Îª´ïµ½Õâ¸öÄ¿µÄ£¬sql serverÊ×ÏȾÍÒªÖªµÀËüµ½µ×ÐèÒª¶ÁÈ¡ÄÇЩҳ£¬ÖªµÀÒª¶ÁÈ¡Ò³µÄ·Ö²¼Ö®ºó£¬¾Í¿ÉÒÔ°²ÅÅioµ÷¶ÈÆ÷¾¡¿ÉÄܵĽ«ÁÙ½üµÄÊý¾ÝÒ³ÓÃÒ»´Îio¶ÁÈ¡ÉÏÀ´£¬¶øÒªÖªµÀÐèÒª¶ÁÈ¡Êý¾ÝÒ³µÄ·Ö²¼¾ÍÐèÒªÏȶÁÈ¡µ½level 1ÉϵÄËùÓÐÒ³£¬ÒÔÕÒ³öÒª¶ÁÈ¡ioÒ³µÄ·Ö²¼Çé¿ö£¬È»ºóÔÙ×ö×îÓŵÄio¶ÁÈ¡°²ÅÅ¡£
ͬÑùµÄµÀÀí£¬Èç¹ûsql serverÊÇÏȶ¨Î»µ½Ò¶½ÚµãµÄÆðʼÊý¾ÝÒ³£¬È»ºó´ÓÒÀ´ÎµÄ¶ÁÈ¡ËùÓеÄÊý¾ÝÒ³µÄ»°£¬ÄÇsql server¾ÍÖ»ÄÜÒ»´Îio¶ÁÈ¡Ò»¸öÊý¾ÝÒ³£¬È»ºóÕÒ³ö¶ÔÓ¦µÄÏÂÒ»Ò³µÄÖ¸Õ룬ÔÙÈ¥¶ÁÈ¡ÏÂÒ»¸öÊý¾ÝÒ³£¬ÕâÑùʵ¼ÊÉÏ»¨·ÑµÄio»áÔ¶±ÈÅúÁ¿¶ÁÈ¡Êý¾ÝÒ³¶àºÜ¶àµÄ¡£Õâ¾ÍºÃ±ÈÎÒÃÇÔÚ×ö±íµÄlookupʱ£¬Èç¹ûÐèÒªlookupµÄÐзdz£Ö®¶àµÄ»°sql server»áת¶øÑ¡Ôñ±íɨÃèÀ´´ïµ½Ä¿µÄµÄ¡£
Ô¤¶Á
ÎÒ¾õµÃSQL ServerÄÚ²¿´æÔÚÕâÑùÒ»¸ö»úÖÆ:
Ëü»á¾¡Á¿½«µ±Ç°Ê¹Óõļ°Ê¹ÓÃ×îƵ·±µÄ±íµÄÊý¾Ý¶¼´øµ½bufferÖÐÀ´£¬Õâ¸úbufferµÄËã·¨ÓÐÒ»¶¨µÄ¹Øϵ¡£
ÇåµôbufferáᣬÄã²»×öÈκζ¯×÷£¬¸ô¼¸ÃëÖÓ£¬sql»á×Ô¶¯½«master¿âÖÐһЩ±È½ÏÖØÒªµÄ±í¶¼´øµ½bufferÖУ¬»òÕß
Äãselect * from tb where 1 <>1 £¬¾¡¹
Ïà¹ØÎĵµ£º
DATEDIFF(²ÎÊýÒ»,²ÎÊý¶þ,²ÎÊýÈý) ---²ÎÊýÒ»£ºyear month day; ²ÎÊý¶þ£º±È½ÏµÄÆðʼÈÕÆÚ,ĬÈÏ1900-1-1£»²ÎÊýÈý£º±È½ÏµÄÈÕÆÚ¡£
eg:DATEDIFF(year,0,getdate())±íʾ±È½Ï0£¨Ä¬ÈÏ1900-1-1£©µ½µ±Ç°µÄÈÕÆÚÏë²î¼¸Äê
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) -- È¡µÃ±¾ÔµĵÚÒ»Ìì
SELECT DATEADD(wk, D ......
±à¼Ç°ÑÔ£ºÕâ¸öÎÄÕÂÎÒûÓвâÊÔ£¬µ«Ç°ÌáÌõ¼þ»¹ÊǺܶ࣬±ÈÈçÒ»¶¨ÒªÓбðµÄ³ÌÐò´æÔÚ£¬¶øÇÒÒ²ÒªÓÃͬһ¸öSQLSERVER¿â£¬»¹µÃ¼ÙÉèÓÐ×¢È멶´¡£Ëµµ½µ×ºÍ¶¯ÍøûÓÐʲô¹Øϵ£¬µ«ÒòΪ¶¯ÍøÂÛ̳µÄ¿ª·ÅÐÔ£¬ÈÃÈËÊìϤÁËÆäÊý¾Ý¿â½á¹¹£¬ºÍ³ÌÐòÔË×÷·½·¨¡£ÔÚÒ»²½²½µÄ¹¥»÷ÖÐÈ¡µÃ¹ÜÀíȨÏÞ£¬ÔÙÒ»²½²½µÄÌáÉýȨÏÞ£¬Èç¹ûÕýºÃÊý¾Ý¿âÓõÄÊÇSAÕʺţ¬¾Í¸üÊÇ ......
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Collections;
using System.Data.SqlClient;
namespace DAL
{
/// <summary>
/// Êý¾Ý¿âµÄͨÓ÷ÃÎÊ´úÂë
/// ´ËÀàΪ³éÏóÀ࣬²»ÔÊÐíʵÀý»¯£¬ÔÚÓ¦Óà ......
Àý×Ó£º
if 1<>1
begin
if 5<0
begin
print('ʧ°Ü')
end
else begin
&nbs ......
Êý¾Ý¿âÀàÐÍ
================================
1¡¢ ²ã´ÎÐͺÍÍø×´ÐÍ£º
´ú±í²úÆ·ÊÇ1969ÄêIBM¹«Ë¾ÑÐÖƵIJã´ÎÄ£ÐÍÊý¾Ý¿â¹ÜÀíϵͳIMS¡£
2¡¢ ¹ØϵÐÍÊý¾ÝÐͿ⣺
Ä¿Ç°´ó²¿·ÖÊý¾Ý¿â²ÉÓõÄÊǹØϵÐÍÊý¾Ý¿â¡£1970ÄêIBM¹«Ë¾µÄÑо¿Ô±E£®F£®CoddÌá³öÁ˹ØϵģÐÍ¡£Æä´ú±í²úƷΪsysem RºÍInges¡£
3¡¢ µÚÈý´úÊý¾Ý¿â½«Îª¸ü¼Ó·á¸»µÄÊý¾ ......