̽ÌÖSQLÓï¾ä¼¼ÇÉ ÓÅ»¯DB2Ó¦ÓóÌÐòÐÔÄÜ
±¾ÎÄÒÔIBMµÄ¹ØÏµÊý¾Ý¿â¹ÜÀíϵͳDB2 Universal Database(ͨÓÃÊý¾Ý¿â) °æ±¾7.1Ϊ±³¾°£¬Óë´ó¼Ò¹²Í¬Ì½ÌÖ±àдºÃµÄSQLÓï¾äµÄ¼¼ÇÉ£¬ÒÔÇóDB2Ó¦ÓóÌÐòÒÔÇóDB2Ó¦ÓóÌÐò»ñµÃ¸üÓŵÄÐÔÄÜ¡£
¡¡¡¡µ±ÎÒÃÇÉè¼ÆÒ»¸öеĻò·ÖÎöÒ»¸öÏÖ´æµÄϵͳʱ£¬ÆäÖÐËùÒª¿¼ÂǵÄÒ»¸öÖØÒªÎÊÌâ¾ÍÊÇÓ¦ÓóÌÐòµÄÉè¼ÆÎÊÌâ¡£¼´Ê¹Êý¾Ý¿âÉè¼ÆµÃºÜºÃ¶øÇÒ»¹¾¹ýÓÅ»¯´¦Àí£¬Ó¦ÓóÌÐòÉè¼Æ²»Êʵ±»¹ÊÇ»áÒýÆðÐÔÄÜÎÊÌâµÄ Êý¾Ý¿â¡£Êµ¼ùÖ¤Ã÷£¬Èç¹ûÓ¦ÓóÌÐò´æÔÚÉè¼ÆÉϵÄÎÊÌ⣬ÄÇôÐÞ¸ÄÕâЩÎÊÌâ±Èµ÷ÕûÊý¾Ý¿âÅäÖòÎÊý¸üÄܸÄÉÆÓ¦ÓóÌÐòµÄÐÔÄÜ¡£
¡¡¡¡ÀýÈ磬SQLÊÇÒ»Öָ߼¶ÓïÑÔ£¬¾ßÓкܴóµÄÁé»îÐÔ£¬´ÓÊý¾Ý¿âÖÐÌáÈ¡ÏàͬµÄÊý¾Ý¿ÉÒÔÓò»Í¬ÐÎʽµÄSELECTÓï¾äÀ´ÊµÏÖ£¬µ«ÊÇ£¬Ó¦ÓóÌÐòµÄÐÔÄÜÈ´Ëæ×ÅSELECTÓï¾äÐÎʽµÄ²»Í¬¶ø´óÏྶͥ£¬ÕâÊÇÒòΪ²»Í¬ÐÎʽµÄSELECTÓï¾ä¾ßÓв»Í¬µÄ´¦Àí³É±¾¡£ÔÚÕâÖÖÇé¿öÏ£¬ÎÒÃǾÍÓ¦¸ÃÑ¡ÔñÄÇЩ´¦Àí³É±¾µÍÁ®µÄSELECTÓï¾ä£¬ÕâÑù£¬Ó¦ÓóÌÐò²Å»áÓнϺõÄÐÔÄÜ¡£
¡¡¡¡DB2ͨÓÃÊý¾Ý¿â±¾ÉíÌṩһ¸öSQL±àÒëÆ÷£¬¸Ã±àÒëÆ÷´´½¨±àÒëºóµÄSQLÓï¾ä£¬µ±¸Ã±àÒëÆ÷±àÒëSQLÓï¾äʱ£¬Ëü½«ÖØÐ±àдÕâЩSQLÓï¾ä£¬ÒÔÉú³ÉÒ»ÖÖ¸üÈÝÒ×¶ÔÆä½øÐÐÓÅ»¯µÄÐÎʽ£¬Õâ¸ö¹ý³Ì³ÆÖ®Îª“²éÑ¯ÖØÐ´(query rewrite)”¡£
¡¡¡¡È»ºó£¬SQL±àÒëÆ÷²úÉúÐí¶àÂú×ãÓû§²éѯҪÇóµÄ¡¢¿ÉÑ¡µÄÖ´Ðз½°¸£¬²¢¸ù¾Ý±í¡¢Ë÷Òý¡¢Áкͺ¯ÊýµÄͳ¼ÆÊý×ÖÀ´ÆÀ¹Àÿ¸ö·½°¸µÄÖ´Ðгɱ¾£¬×îºó£¬´ÓÖÐѡȡִÐгɱ¾×îµÍµÄ·½°¸£¬¸Ã¹ý³Ì³ÆÖ®Îª“²éѯÓÅ»¯(query optimization)”¡£
¡¡¡¡ÓÐÒ»µãºÜÖØÒª£¬ÐèÒªÎÒÃÇ×¢Ò⣬ÄǾÍÊDz»¹Ü´æÈ¡·½°¸µÄÓÅÁÓ£¬SQL±àÒëÆ÷(°üÀ¨²éÑ¯ÖØÐ´ºÍÓÅ»¯Á½¸ö½×¶Î)±ØÐë´ÓÖÐÑ¡ÔñÒ»¸ö£¬ÒÔ²úÉúÂú×ãÓ¦ÓóÌÐò²éѯҪÇóµÄ½á¹û¼¯£¬Òò´Ë£¬ÎÒÃÇÔÚ±àд²éѯ´úÂëʱ£¬Ö»Ó¦²éѯÎÒÃÇÐèÒªµÄÊý¾Ý£¬²»ÐèÒªµÄÊý¾Ý¾Í²»Òª²éѯ£¬ÕâÑù×öµÄÄ¿µÄÊÇÈ·±£SQL±àÒëÆ÷Äܹ»Ñ¡ÔñÒ»¸ö×îºÃµÄ´æÈ¡·½°¸¡£
¡¡¡¡±àдSELECTÓï¾äʱһ°ã×ñÑÒÔÏÂÆß¸ö·½ÃæµÄ×¼Ôò£º
¡¡¡¡1¡¢ÔÚSELECTÁбíÖнö½öÖ¸Ã÷ÐèÒªµÄÁÐ
¡¡¡¡ÎÒÃÇÔÚ±àдSELECTÓï¾äʱ£¬¾¡¹ÜÓÐʱºò²»ÐèÒªÓõ½±íÖÐËùÓеÄ×ֶΣ¬µ«»¹ÊÇϰ¹ßÓÃ*(±íʾÒýÓñíÖÐËùÓеÄ×Ö¶Î)À´Ö¸¶¨±íÖÐËùÓеÄÁУ¬ÕâÑù×öÔÚ±à³ÌÉÏȷʵºÜ¼òµ¥¡¢·½±ã£¬µ«Õâô×öµÄºó¹ûÊÇÓ¦ÓóÌÐò·µ»ØÒ»Ð©ÎÒÃDz»ÐèÒªµÄÁУ¬ÏµÍ³×öһЩ²»±ØÒªµÄ´¦Àí£¬×öһЩÎÞÓù¦£¬Í½ºÄϵͳ±¦¹óµÄÈí¡¢Ó²¼þ×ÊÔ´£¬ÓÈÆäµ±±íÖÐÓкܶà×Ö¶Îʱ£¬ÕâÖÖÀË·ÑÏÖÏó¾ÍÔ½¼ÓÃ÷ÏÔ;¶øÇÒ£¬ÕâÒ²²»ÊÇÁ¼ºÃµÄ±à³Ìϰ¹ß£¬ÎÒÃDz»Ó¦Ìᳫ¡£
¡¡¡¡2¡¢Ê¹ÓÃν´ÊÀ´ÏÞÖÆ·µ»ØµÄÐÐÊý
¡¡¡¡ÔÚSQL±à³ÌÓïÑÔÖУ¬°´ÕÕÆÀ¹À¹ý³ÌÖÐÈçºÎʹÓÃν´Ê¡¢ºÎʱʹÓÃν
Ïà¹ØÎĵµ£º
SqlserverÕâ¶«Î÷ûÉÙ¸úËû´ò½»µÀ,¸Õѧ¿ª·¢ÓïÑÔʱ¾ÍÒѾ¸úËû½Ó´¥ÁË,²»ÒªËµºÜ¾«Í¨,µ«¾ÍÓï·¨»¹ËãÊÇÊìϤ,µ«ÏÖÔÚ¿ªÊ¼Ð´C#,·¢ÏÖºÜC#¶àÁËÒ»ÖÖSqlServerµÄ²ÎÊý´«È뷽ʽ,ÒÔÍùÎÒÃdz£³£¶ÔÒª´«²ÎµÄSqlÓï¾ä¶¼ÊÇÖ±½Óͨ¹ýÆ´´ÕSqlÓï¾äµÄ·½Ê½À´ÊµÏÖ,µ«ÏÖÔÚC#ΪʲôҪרÃÅ×öÒ»¸öSql²ÎÊýµÄÀàÀ´ÊµÏÖÄØ,¾¹ý²éÕÒ²ÅÖªµÀ,ÕâÑù×öÊÇÓеÀÀíµÄ,Ò»Ê ......
1.SQL SERVERµÄÊý¾ÝÀàÐÍ
¡¡¡¡Êý¾ÝÀàŪÊÇÊý¾ÝµÄÒ»ÖÖÊôÐÔ£¬±íʾÊý¾ÝËù±íʾÐÅÏ¢µÄÀàÐÍ¡£ÈκÎÒ»ÖÖ¼ÆËã»úÓïÑÔ¶¼¶¨ÒåÁË×Ô¼ºµÄÊý¾ÝÀàÐÍ¡£µ±È»£¬²»Í¬µÄ³ÌÐòÓïÑÔ¶¼¾ßÓв»Í¬µÄÌØµã£¬Ëù¶¨ÒåµÄÊý¾ÝÀàÐ͵ĸ÷ÀàºÍÃû³Æ¶¼»ò¶à»òÉÙÓÐЩ²»Í¬¡£SQLServer ÌṩÁË 25 ÖÖÊý¾ÝÀàÐÍ£º
¡¡¡¡·Binary [(n)]
¡¡¡¡·Varbinary [(n)]
¡¡ ......
½ñÌìÎÒÔÚSQL Server 2005ÖÐÓýű¾´´½¨Ò»ÕÅ±í£¬²é×ÊÁÏ·¢ÏÖÓеĽű¾ÖÐ×Ö¶ÎÓмÓ[]ÖзûºÅ£¬ÎÒÎÊÁ˶¬¼¾£¬µÃÖªÊÇÕâ»ØÊ£¬ÓÃ[]µÄ×Ö¶ÎÃû£¬¼´±ãÊÇsql¹Ø¼ü×ÖÒ²¿ÉÒÔ×÷Ϊ×Ö¶ÎÃû£¬²»»á±¨´í¡£
SQL ServerÀïµÄ±íÖÐÌí¼ÓÒ»¸ö×ֶΣ¬È磺timeϵͳ»á×Ô¶¯¼ÓÒ»¶Ô·½À¨ºÅ¼´£º[time] ......
ºÜ¶àʱºòÎÒÃÇ¿ÉÄܶ¼ÐèÒªÕâôһ¸ö¼ò·±»¥Ïàת»»µÄSQLº¯Êý£¬½ñÌìÔÚÍøÉÏÕÒµ½µÄ£¬ÊÕ¼¯ÏÂÀ´¡£
ÒÔºóÓÐÁËËü¾ÍʡʶàÀ²¡£²»ÓÃÔÙд³ÌÐòÈ¡³öÀ´×ª»»ºóÔÙ¸üÐÂÊý¾Ý¿âÁË¡£
SQL¼òÌå·±Ìåת»»º¯Êý´úÂ룺
--Éú³ÉÂë±í
if exists (select * from dbo.sysobjects where id = object_id(N'[codetable]') and OBJECTPROPERTY(id, N'IsUserTable' ......
ÎÒ˵µÄ²»¶¨Ìõ¼þÊÇÖ¸²éѯÌõ¼þµÄ¸öÊý²»¶¨¡£ÓÐʱһ¸ö£¬ÓÐʱÁ½¸ö£¬ÓÐʱºÃ¼¸¸ö¡£
Ê×ÏÈÎÒ·¢ÏÖ
select * from A where a='kkk' Óë
select * from A where a like 'kkk'
ÆäʵЧ¹ûÊÇÒ»Ñù£¬Ö»Òª like ºóÃæµÄ×Ö·û´®²»°üº¬Í¨Åä·û¡£ÕâÑùÒ»À´¾ÍºÜ·½±ãÁË¡£Æ©ÈçÓÐ
select * from A where a='KKK' and b='LLL'
ÓÐÁ½¸ö²éѯÌõ¼þ£¬ ......