mysql´¦Àíº£Á¿Êý¾ÝʱµÄһЩÓÅ»¯²éѯËÙ¶È·½·¨
ÓÉÓÚÔÚ²ÎÓëµÄʵ¼ÊÏîÄ¿Öз¢ÏÖµ±mysql±íµÄÊý¾ÝÁ¿´ïµ½°ÙÍò¼¶Ê±£¬ÆÕͨSQL²éѯЧÂʳÊÖ±ÏßϽµ£¬¶øÇÒÈç¹ûwhereÖеIJéѯÌõ¼þ½Ï¶àʱ£¬Æä²éѯËÙ ¶È¼òÖ±ÎÞ·¨ÈÝÈÌ¡£Ôø¾²âÊÔ¶ÔÒ»¸ö°üº¬400¶àÍòÌõ¼Ç¼£¨ÓÐË÷Òý£©µÄ±íÖ´ÐÐÒ»ÌõÌõ¼þ²éѯ£¬Æä²éѯʱ¼ä¾¹È»¸ß´ï40¼¸Ã룬ÏàÐÅÕâô¸ßµÄ²éѯÑÓʱ£¬ÈκÎÓû§¶¼»á ×¥¿ñ¡£Òò´ËÈçºÎÌá¸ßsqlÓï¾ä²éѯЧÂÊ£¬ÏÔµÃÊ®·ÖÖØÒª¡£ÒÔÏÂÊÇÍøÉÏÁ÷´«±È½Ï¹ã·ºµÄ30ÖÖSQL²éѯÓï¾äÓÅ»¯·½·¨£º
1¡¢Ó¦¾¡Á¿±ÜÃâÔÚ where ×Ó¾äÖÐʹÓÃ!=»ò<>²Ù×÷·û£¬·ñÔò½«ÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè¡£
2¡¢¶Ô²éѯ½øÐÐÓÅ»¯£¬Ó¦¾¡Á¿±ÜÃâÈ«±íɨÃ裬Ê×ÏÈÓ¦¿¼ÂÇÔÚ where ¼° order by Éæ¼°µÄÁÐÉϽ¨Á¢Ë÷Òý¡£
3¡¢Ó¦¾¡Á¿±ÜÃâÔÚ where ×Ó¾äÖжÔ×ֶνøÐÐ null ÖµÅжϣ¬·ñÔò½«µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃ裬È磺
select id from t where num is null
¿ÉÒÔÔÚnumÉÏÉèÖÃĬÈÏÖµ0£¬È·±£±íÖÐnumÁÐûÓÐnullÖµ£¬È»ºóÕâÑù²éѯ£º
select id from t where num=0
4¡¢¾¡Á¿±ÜÃâÔÚ where ×Ó¾äÖÐʹÓà or À´Á¬½ÓÌõ¼þ£¬·ñÔò½«µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃ裬È磺
select id from t where num=10 or num=20
¿ÉÒÔÕâÑù²éѯ£º
select id from t where num=10
union all
select id from t where num=20
5¡¢ÏÂÃæµÄ²éѯҲ½«µ¼ÖÂÈ«±íɨÃ裺(²»ÄÜǰÖðٷֺÅ)
select id from t where name like ¡®�c%¡¯
ÈôÒªÌá¸ßЧÂÊ£¬¿ÉÒÔ¿¼ÂÇÈ«ÎļìË÷¡£
6¡¢in ºÍ not in Ò²ÒªÉ÷Ó㬷ñÔò»áµ¼ÖÂÈ«±íɨÃ裬È磺
select id from t where num in(1,2,3)
¶ÔÓÚÁ¬ÐøµÄÊýÖµ£¬ÄÜÓà between ¾Í²»ÒªÓà in ÁË£º
select id from t where num between 1 and 3
7¡¢Èç¹ûÔÚ where ×Ó¾äÖÐʹÓòÎÊý£¬Ò²»áµ¼ÖÂÈ«±íɨÃè¡£ÒòΪSQLÖ»ÓÐÔÚÔËÐÐʱ²Å»á½âÎö¾Ö²¿±äÁ¿£¬µ«ÓÅ»¯³ÌÐò²»Äܽ«·ÃÎʼƻ®µÄÑ¡ÔñÍÆ³Ùµ½ÔËÐÐʱ£»Ëü±ØÐëÔÚ±àÒëʱ½øÐÐÑ¡Ôñ¡£È» ¶ø£¬Èç¹ûÔÚ±àÒëʱ½¨Á¢·ÃÎʼƻ®£¬±äÁ¿µÄÖµ»¹ÊÇδ֪µÄ£¬Òò¶øÎÞ·¨×÷ΪË÷ÒýÑ¡ÔñµÄÊäÈëÏî¡£ÈçÏÂÃæÓï¾ä½«½øÐÐÈ«±íɨÃ裺
select id from t where num=@num
¿ÉÒÔ¸ÄÎªÇ¿ÖÆ²éѯʹÓÃË÷Òý£º
select id from t with(index(Ë÷ÒýÃû)) where num=@num
8¡¢Ó¦¾¡Á¿±ÜÃâÔÚ where ×Ó¾äÖжÔ×ֶνøÐбí´ïʽ²Ù×÷£¬Õ⽫µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè¡£È磺
select id from t where num/2=100
Ó¦¸ÄΪ:
select id from t where num=100*2
9¡¢Ó¦¾¡Á¿±ÜÃâÔÚwhere×Ó¾äÖжÔ×ֶνøÐк¯Êý²Ù×÷£¬Õ⽫µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè¡£È磺
select id from t where substring(name,1,3)=¡¯abc¡¯¨CnameÒÔabc¿ªÍ·µÄid
select id from t where datediff(day,createdate,¡¯2005-11-30¡ä)=0¨C¡¯2005-11-30¡äÉú³ÉµÄid
Ó¦¸ÄΪ:
select id from t where name like ¡®abc%¡¯
select id from t where createdate>=¡¯2005-11-30¡ä and createdate<¡¯2005-12-1¡ä
10¡¢²»ÒªÔÚ where ×Ó¾äÖеġ°=¡±×ó±ß½øÐк¯Êý¡¢ËãÊõÔËËã»òÆäËû±í´ïʽÔËË㣬·ñÔòϵͳ½«¿ÉÄÜÎÞ·¨ÕýȷʹÓÃË÷Òý¡£
11¡¢ÔÚʹÓÃË÷Òý×Ö¶Î×÷ΪÌõ¼þʱ£¬Èç¹û¸ÃË÷ÒýÊǸ´ºÏË÷Òý£¬ÄÇô±ØÐëʹÓõ½¸ÃË÷ÒýÖеĵÚÒ»¸ö×Ö¶Î×÷ΪÌõ¼þʱ²ÅÄܱ£Ö¤ÏµÍ³Ê¹ÓøÃË÷Òý£¬·ñÔò¸ÃË÷Òý½«²»»á±»Ê¹ Ó㬲¢ÇÒÓ¦¾¡¿ÉÄܵÄÈÃ×Ö¶Î˳ÐòÓëË÷Òý˳ÐòÏàÒ»Ö¡£
12¡¢²»ÒªÐ´Ò»Ð©Ã»ÓÐÒâÒåµÄ²éѯ£¬ÈçÐèÒªÉú³ÉÒ»¸ö¿Õ±í½á¹¹£º
select col1,col2 into #t from t where 1=0
ÕâÀà´úÂë²»»á·µ»ØÈκνá¹û¼¯£¬µ«ÊÇ»áÏûºÄϵͳ×ÊÔ´µÄ£¬Ó¦¸Ä³ÉÕâÑù£º
create table #t(¡)
13¡¢ºÜ¶àʱºòÓà exists ´úÌæ in ÊÇÒ»¸öºÃµÄÑ¡Ôñ£º
select num from a where num in(select num from b)
ÓÃÏÂÃæµÄÓï¾äÌæ»»£º
select num from a where exists(select 1 from b where num=a.num)
14¡¢²¢²»ÊÇËùÓÐË÷Òý¶Ô²éѯ¶¼ÓÐЧ£¬SQLÊǸù¾Ý±íÖÐÊý¾ÝÀ´½øÐвéѯÓÅ»¯µÄ£¬µ±Ë÷ÒýÁÐÓдóÁ¿Êý¾ÝÖØ¸´Ê±£¬SQL²éѯ¿ÉÄܲ»»áÈ¥ÀûÓÃË÷Òý£¬ÈçÒ»±íÖÐÓÐ×Ö¶Î sex£¬male¡¢female¼¸ºõ¸÷Ò»°ë£¬ÄÇô¼´Ê¹ÔÚsexÉϽ¨ÁËË÷ÒýÒ²¶Ô²éѯЧÂÊÆð²»ÁË×÷Óá£
15¡¢Ë÷Òý²¢²»ÊÇÔ½¶àÔ½ºÃ£¬Ë÷Òý¹ÌÈ»¿ÉÒÔÌá¸ßÏàÓ¦µÄ select µÄЧÂÊ£¬µ«Í¬Ê±Ò²½µµÍÁË insert ¼° update µÄЧÂÊ£¬ÒòΪ insert »ò update ʱÓпÉÄÜ»áÖØ½¨Ë÷Òý£¬ËùÒÔÔõÑù½¨Ë÷ÒýÐèÒªÉ÷ÖØ¿¼ÂÇ£¬ÊÓ¾ßÌåÇé¿ö¶ø¶¨¡£Ò»¸ö±íµÄË÷ÒýÊý×îºÃ²»Òª³¬¹ý6¸ö£¬ÈôÌ«¶àÔòÓ¦¿¼ÂÇһЩ²»³£Ê¹Óõ½µÄÁÐÉϽ¨µÄË÷ÒýÊÇ·ñÓÐ ±ØÒª¡£
16.Ó¦¾¡¿ÉÄܵıÜÃâ¸üРclustered Ë÷ÒýÊý¾ÝÁУ¬ÒòΪ clustered Ë÷ÒýÊý¾ÝÁеÄ˳Ðò¾ÍÊDZí¼Ç¼µÄÎïÀí´æ´¢Ë³Ðò£¬Ò»µ©¸ÃÁÐÖµ¸Ä±ä½«µ¼ÖÂÕû¸ö±í¼Ç¼µÄ˳ÐòµÄµ÷Õû£¬»áºÄ·ÑÏ൱´óµÄ×ÊÔ´¡£ÈôÓ¦ÓÃϵͳÐèҪƵ·±¸üРclustered Ë÷ÒýÊý¾ÝÁУ¬ÄÇôÐèÒª¿¼ÂÇÊÇ·ñÓ¦½«¸ÃË÷Òý½¨Îª clustered Ë÷Òý¡£
17¡¢¾¡Á¿Ê¹ÓÃÊý×ÖÐÍ×ֶΣ¬ÈôÖ»º¬ÊýÖµÐÅÏ¢µÄ×ֶξ¡Á¿²»ÒªÉè¼ÆÎª×Ö·ûÐÍ£¬Õâ»á½µµÍ²éѯºÍÁ¬½ÓµÄÐÔÄÜ£¬²¢»áÔö¼Ó´æ´¢¿ªÏú¡£ÕâÊÇÒòΪÒýÇæÔÚ´¦Àí²éѯºÍÁ¬½Óʱ»á Öð¸ö±È½Ï×Ö·û´®ÖÐÿһ¸ö×Ö·û£¬¶ø¶ÔÓÚÊý×ÖÐͶøÑÔÖ»ÐèÒª±È½ÏÒ»´Î¾Í¹»ÁË¡£
18¡¢¾¡¿ÉÄܵÄʹÓà varchar/nvarchar ´úÌæ char/nchar £¬ÒòΪÊ×Ïȱ䳤×ֶδ洢¿Õ¼äС£¬¿ÉÒÔ½ÚÊ¡´æ´¢¿Õ¼ä£¬Æä´Î¶ÔÓÚ²éѯÀ´Ëµ£¬ÔÚÒ»¸öÏà¶Ô½ÏСµÄ×Ö¶ÎÄÚËÑË÷ЧÂÊÏÔȻҪ¸ßЩ¡£
19¡¢Èκεط½¶¼²»ÒªÊ¹Óà select * from t £¬ÓþßÌåµÄ×Ö¶ÎÁбí´úÌæ¡°*¡±£¬²»Òª·µ»ØÓò»µ½µÄÈκÎ×ֶΡ£
20¡¢¾¡Á¿Ê¹Óñí±äÁ¿À´´úÌæÁÙʱ±í¡£Èç¹û±í±äÁ¿°üº¬´óÁ¿Êý¾Ý£¬Çë×¢ÒâË÷Òý·Ç³£ÓÐÏÞ£¨Ö»ÓÐÖ÷¼üË÷Òý£©¡£
21¡¢±ÜÃâÆµ·±´´½¨ºÍɾ³ýÁÙʱ±í£¬ÒÔ¼õÉÙϵͳ±í×ÊÔ´µÄÏûºÄ¡£
22¡¢ÁÙʱ±í²¢²»ÊDz»¿ÉʹÓã¬Êʵ±µØÊ¹ÓÃËüÃÇ¿ÉÒÔʹijЩÀý³Ì¸üÓÐЧ£¬ÀýÈ磬µ±ÐèÒªÖØ¸´ÒýÓôóÐͱí»ò³£ÓñíÖеÄij¸öÊý¾Ý¼¯Ê±¡£µ«ÊÇ£¬¶ÔÓÚÒ»´ÎÐÔʼþ£¬×îºÃʹ Óõ¼³ö±í¡£
23¡¢ÔÚн¨ÁÙʱ±íʱ£¬Èç¹ûÒ»´ÎÐÔ²åÈëÊý¾ÝÁ¿ºÜ´ó£¬ÄÇô¿ÉÒÔʹÓà select into ´úÌæ create table£¬±ÜÃâÔì³É´óÁ¿ log £¬ÒÔÌá¸ßËÙ¶È£»Èç¹ûÊý¾ÝÁ¿²»´ó£¬ÎªÁË»ººÍϵͳ±íµÄ×ÊÔ´£¬Ó¦ÏÈcreate table£¬È»ºóinsert¡£
24¡¢Èç¹ûʹÓõ½ÁËÁÙʱ±í£¬ÔÚ´æ´¢¹ý³ÌµÄ×îºóÎñ±Ø½«ËùÓеÄÁÙʱ±íÏÔʽɾ³ý£¬ÏÈ truncate table £¬È»ºó drop table £¬ÕâÑù¿ÉÒÔ±ÜÃâϵͳ±íµÄ½Ï³¤Ê±¼äËø¶¨¡£
25¡¢¾¡Á¿±ÜÃâʹÓÃÓα꣬ÒòΪÓαêµÄЧÂʽϲÈç¹ûÓαê²Ù×÷µÄÊý¾Ý³¬¹ý1ÍòÐУ¬ÄÇô¾ÍÓ¦¸Ã¿¼ÂǸÄд¡£
26¡¢Ê¹ÓûùÓÚÓαêµÄ·½·¨»òÁÙʱ±í·½·¨Ö®Ç°£¬Ó¦ÏÈѰÕÒ»ùÓÚ¼¯µÄ½â¾ö·½°¸À´½â¾öÎÊÌ⣬»ùÓÚ¼¯µÄ·½·¨Í¨³£¸üÓÐЧ¡£
27¡¢ÓëÁÙʱ±íÒ»Ñù£¬Óα겢²»ÊDz»¿ÉʹÓ᣶ÔСÐÍÊý¾Ý¼¯Ê¹Óà FAST_FORWARD Óαêͨ³£ÒªÓÅÓÚÆäËûÖðÐд¦Àí·½·¨£¬ÓÈÆäÊÇÔÚ±ØÐëÒýÓü¸¸ö±í²ÅÄÜ»ñµÃËùÐèµÄÊý¾Ýʱ¡£ÔÚ½á¹û¼¯ÖаüÀ¨¡°ºÏ¼Æ¡±µÄÀý³Ìͨ³£Òª±ÈʹÓÃÓÎ ±êÖ´ÐеÄËٶȿ졣Èç¹û¿ª·¢Ê± ¼äÔÊÐí£¬»ùÓÚÓαêµÄ·½·¨ºÍ»ùÓÚ¼¯µÄ·½·¨¶¼¿ÉÒÔ³¢ÊÔһϣ¬¿´ÄÄÒ»ÖÖ·½·¨µÄЧ¹û¸üºÃ¡£
28¡¢ÔÚËùÓеĴ洢¹ý³ÌºÍ´¥·¢Æ÷µÄ¿ªÊ¼´¦ÉèÖà SET NOCOUNT ON £¬ÔÚ½áÊøÊ±ÉèÖà SET NOCOUNT OFF ¡£ÎÞÐèÔÚÖ´Ðд洢¹ý³ÌºÍ´¥·¢Æ÷µÄÿ¸öÓï¾äºóÏò¿Í»§¶Ë·¢ËÍ DONE_IN_PROC ÏûÏ¢¡£
29¡¢¾¡Á¿±ÜÃâÏò¿Í»§¶Ë·µ»Ø´óÊý¾ÝÁ¿£¬ÈôÊý¾ÝÁ¿¹ý´ó£¬Ó¦¸Ã¿¼ÂÇÏàÓ¦ÐèÇóÊÇ·ñºÏÀí¡£
30¡¢¾¡Á¿±ÜÃâ´óÊÂÎñ²Ù×÷£¬Ìá¸ßϵͳ²¢·¢ÄÜÁ¦¡£
ÍÆ¼öÐÅÏ¢
ÈÈÃÅÐÅÏ¢
- nohup: redirecting stderr to stdou....
- ʹÓÃlog_formatΪNginx·þÎñÆ÷ÉèÖøüÏêϸµÄÈÕÖ¾¸ñʽ
- jquery easyUI--dataGrid-Json
- [Ô´´]·ÂGoogle Reader¡¢ÐÂÀË΢²©¡¢ÌÚѶ΢²©µ....
- ÀûÓÃKeepalived+mysql¹¹½¨¸ß¿ÉÓÃMySQLË«Ö÷×Ô¶....
- Nginx+keepalivedʵÏÖ¸ºÔؾùºâºÍË«»úÈȱ¸¸ß¿ÉÓÃ
- jqueryʵÏÖÒ³Ãæ¼ÓÔØ½ø¶ÈÌõ
- Rolling cURL: PHP²¢·¢×î¼Ñʵ¼ù
- codeigniter ·ÓÉÖÕ¼«ÓÅ»¯(url rewrite)
- linuxÏÂÉèÖÃsshÎÞÃÜÂëµÇ¼
ÆÀÂÛ