¸üÐÂʱ¼ä:2021Äê04ÔÂ28ÈÕ09ʱ47·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

Ê×ÏÈÒª¸ù¾ÝÐèÇóд³ö½á¹¹Á¼ºÃµÄSQL£¬È»ºó¸ù¾ÝSQL ÔÚ±íÖн¨Á¢ÓÐЧµÄË÷Òý¡£µ«ÊÇÈç¹ûË÷ÒýÌ«¶à£¬²»µ«»áÓ°ÏìдÈëµÄЧÂÊ£¬¶Ô²éѯҲÓÐÒ»¶¨µÄÓ°Ïì¡£
ÕâÊÇ×î³£Óã¬Ã¿Ò»¸ö¼¼ÊõÈËÔ±¶¼Ó¦¸ÃÕÆÎÕ»ù±¾µÄSQLµ÷ÓÅÊÖ¶Î(°üÀ¨·½·¨¡¢¹¤¾ß¡¢¸¨ÖúϵͳµÈ)¡£ÕâÀïÒÔMySQLΪÀý£¬×î³£¼ûµÄ·½Ê½ÊÇ£¬ÓÉ×Ô´øµÄÂý²éѯÈÕÖ¾»òÕß¿ªÔ´µÄÂý²éѯϵͳ¶¨Î»µ½¾ßÌåµÄ³öÎÊÌâµÄSQL£¬È»ºóʹÓÃexplain¡£profileµÈ¹¤¾ßÀ´Öð²½µ÷ÓÅ£¬×îºó¾¹ý²âÊԴﵽЧ¹ûºóÉÏÏß¡£
explain + sqlÓï¾ä²éѯsqlÖ´Ðйý³Ì, ͨ¹ýÖ´Ðмƻ®£¬ÎÒÃÇÄܵõ½ÄÄЩÐÅÏ¢£º
A£ºÄÄЩ²½Ö軨·ÑµÄ³É±¾±È½Ï¸ß
B£ºÄÄЩ²½Öè²úÉúµÄÊý¾ÝÁ¿¶à£¬Êý¾ÝÁ¿µÄ¶àÉÙÓÃÏßÌõµÄ´Öϸ±íʾ£¬ºÜÖ±¹Û
C£ºÃ¿Ò»²½Ö´ÐÐÁËʲô¶¯×÷
(1)Ë÷ÒýÁÐÎñ±ØÖظ´¶ÈµÍ, whereÌõ¼þ×Ö¶ÎÉÏÐèÒª½¨Á¢Ë÷Òý
(2)ʹÓÃË÷Òý¾Í²»ÄÜÓÃOR²éѯ£¬·ñÔòË÷Òý²»Æð×÷ÓÃ
(3)ʹÓÃË÷Òý£¬likeÄ£ºý²éѯ²»ÄÜÒÔ%¿ªÍ·
(4)²éѯÌõ¼þÎñ±ØÒÔË÷ÒýÁпªÍ·£¬·ñÔòË÷ÒýʧЧ
(5)¸´ºÏË÷Òý×ñÊØ×î×óÔÔò¡£
A£º¾¡Á¿²»ÒªÔÚwhere ×Ó¾äÖжÔ×ֶνøÐÐnull ÖµÅжϣ¬·ñÔò½«µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè
B£ºÓ¦¾¡Á¿±ÜÃâÔÚwhere ×Ó¾äÖÐʹÓÃ!= »ò<> ²Ù×÷·û£¬·ñÔò½«ÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè¡£
C£ºÓ¦¾¡Á¿±ÜÃâÔÚwhere ×Ó¾äÖÐʹÓÃor À´Á¬½ÓÌõ¼þ£¬Èç¹ûÒ»¸ö×Ö¶ÎÓÐË÷Òý£¬Ò»¸ö×Ö¶ÎûÓÐË÷Òý£¬½«µ¼ÖÂÒýÇæ·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃè
D£º²»×öÁÐÔËËãwhere age + 1 = 10£¬ÈκζÔÁеIJÙ×÷¶¼½«µ¼Ö±íɨÃ裬Ëü°üÀ¨Êý¾Ý¿â½Ì³Ìº¯Êý¡£¼ÆËã±í´ïʽµÈ, ¶¼»áÊÇË÷ÒýʧЧ¡£
E£º²éѯlike£¬Èç¹ûÊÇ‘%aaa’ Ò²»áÔì³ÉË÷ÒýʧЧ¡£
·¸ù¾ÝÒµÎñ³¡¾°½¨Á¢¸²¸ÇË÷ÒýÖ»²éѯҵÎñÐèÒªµÄ×ֶΣ¬Èç¹ûÕâЩ×ֶα»Ë÷Òý¸²¸Ç£¬½«¼«´óµÄÌá¸ß²éѯЧÂÊ¡£
·¶à±íÁ¬½ÓµÄ×Ö¶ÎÉÏÐèÒª½¨Á¢Ë÷Òý£¬ÕâÑù¿ÉÒÔ¼«´óÌá¸ß±íÁ¬½ÓµÄЧÂÊ¡£
·where Ìõ¼þ×Ö¶ÎÉÏÐèÒª½¨Á¢Ë÷Òý, µ«Where Ìõ¼þÉϲ»ÒªÊ¹ÓÃÔËË㺯Êý£¬ÒÔÃâË÷ÒýʧЧ¡£
·ÅÅÐò×Ö¶ÎÉÏ, ·Ö×é×Ö¶ÎÉÏÐèÒª½¨Á¢Ë÷Òý¡£
·ÓÅ»¯insert Óï¾ä: ÅúÁ¿ÁвåÈëÊý¾ÝÒª±Èµ¥¸öÁвåÈëÊý¾ÝЧÂʸߡ£
·ÓÅ»¯order by Óï¾ä: ÔÚʹÓÃorder by Óï¾äʱ, ²»ÒªÊ¹ÓÃselect *,select ºóÃæÒª²éÓÐË÷ÒýµÄÁÐ, Èç¹ûÒ»Ìõsql Óï¾äÖжԶà¸öÁнøÐÐÅÅÐò, ÔÚÒµÎñÔÊÐíÇé¿öÏÂ, ¾¡Á¿Í¬Ê±ÓÃÉýÐò»òͬʱÓýµÐò¡£
·ÓÅ»¯group by Óï¾ä: ÔÚÎÒÃǶÔijһ¸ö×ֶνøÐзÖ×éµÄʱºò, MysqlĬÈϾͽøÐÐÁËÅÅÐò, µ«ÊÇÅÅÐò²¢²»ÊÇÎÒÃÇÒµÎñËùÐèµÄ, ¶îÍâµÄÅÅÐò»á½µµÍЧÂÊ¡£ ËùÒÔÔÚÓõÄʱºò¿ÉÒÔ½ûÖ¹ÅÅÐò, ʹÓÃorder by null½ûÓá£
select age, count(*) from emp group by age order by null
·¾¡Á¿±ÜÃâ×Ó²éѯ, ¿ÉÒÔ½«×Ó²éѯÓÅ»¯Îªjoin ¶à±íÁ¬½Ó²éѯ¡£
¸ù¾ÝÊý¾Ý¿âÈý·¶Ê½À´½øÐбí½á¹¹µÄÉè¼Æ¡£Éè¼Æ±í½á¹¹Ê±£¬¾ÍÐèÒª¿¼ÂÇÈçºÎÉè¼Æ²ÅÄܸüÓÐЧµÄ²éѯ, ×ñÑÊý¾Ý¿âÈý·¶Ê½£º
i. µÚÒ»·¶Ê½£ºÊý¾Ý±íÖÐÿ¸ö×ֶζ¼±ØÐëÊDz»¿É²ð·ÖµÄ×îСµ¥Ôª£¬Ò²¾ÍÊÇÈ·±£Ã¿Ò»ÁеÄÔ×ÓÐÔ;
ii. µÚ¶þ·¶Ê½£ºÂú×ãÒ»·¶Ê½ºó£¬±íÖÐÿһÁбØÐëÓÐΨһÐÔ£¬¶¼±ØÐëÒÀÀµÓÚÖ÷¼ü;
iii. µÚÈý·¶Ê½£ºÂú×ã¶þ·¶Ê½ºó£¬±íÖеÄÿһÁÐÖ»ÓëÖ÷¼üÖ±½ÓÏà¹Ø¶ø²»ÊǼä½ÓÏà¹Ø(Íâ¼üÒ²ÊÇÖ±½ÓÏà¹Ø)£¬×Ö¶ÎûÓÐÈßÓà¡£
×¢Ò⣺ûÓÐ×îºÃµÄÉè¼Æ£¬Ö»ÓÐ×îºÏÊʵÄÉè¼Æ£¬ËùÒÔ²»Òª¹ý·Ö×¢ÖØÀíÂÛ¡£Èý·¶Ê½¿ÉÒÔ×÷Ϊһ¸ö»ù±¾ÒÀ¾Ý£¬²»ÒªÉú°áÓ²Ìס£
ÓÐʱºò¿ÉÒÔ¸ù¾Ý³¡¾°ºÏÀíµØ·´¹æ·¶»¯£º
A£º·Ö¸î±í¡£
B£º±£ÁôÈßÓà×ֶΡ£µ±Á½¸ö»ò¶à¸ö±íÔÚ²éѯÖо³£ÐèÒªÁ¬½Óʱ£¬¿ÉÒÔÔÚÆäÖÐÒ»¸ö±íÉÏÔö¼ÓÈô¸ÉÈßÓàµÄ×ֶΣ¬ÒÔ±ÜÃâ±íÖ®¼äµÄÁ¬½Ó¹ýÓÚÆµ·±£¬Ò»°ãÔÚÈßÓàÁеÄÊý¾Ý²»¾³£±ä¶¯µÄÇé¿öÏÂʹÓá£
C£ºÔö¼ÓÅÉÉúÁС£ÅÉÉúÁÐÊÇÓɱíÖÐµÄÆäËü¶à¸öÁеļÆËãËùµÃ£¬Ôö¼ÓÅÉÉúÁпÉÒÔ¼õÉÙͳ¼ÆÔËË㣬ÔÚÊý¾Ý»ã×Üʱ¿ÉÒÔ´ó´óËõ¶ÌÔËËãʱ¼ä, ǰÌáÊÇÕâ¸öÁо³£±»Óõ½, ÕâÒ²¾ÍÊÇ·´µÚÈý·¶Ê½¡£
ˮƽ·Ö¸î(°´ÐÐ)£¬´¹Ö±·Ö¸î(°´ÁÐ)
·Ö±í³¡¾°
A£º ¸ù¾Ý¾Ñ飬MySQL ±íÊý¾ÝÒ»°ã´ïµ½°ÙÍò¼¶±ð£¬²éѯЧÂʾͻáºÜµÍ¡£
B£º Ò»ÕűíµÄijЩ×Ö¶ÎÖµ±È½Ï´ó²¢ÇÒºÜÉÙʹÓ᣿ÉÒÔ½«ÕâЩ×ֶθôÀë³Éµ¥¶ÀÒ»ÕÅ±í£¬Í¨¹ýÍâ¼ü¹ØÁª£¬ÀýÈ翼ÊԳɼ¨£¬ÎÒÃÇͨ³£¹Ø×¢·ÖÊý£¬²»¹Ø×¢¿¼ÊÔÏêÇé¡£
ˮƽ·Ö±í²ßÂÔ
C£º°´Ê±¼ä·Ö±í£ºµ±Êý¾ÝÓкÜÇ¿µÄʵЧÐÔ£¬ÀýÈç΢²©µÄÊý¾Ý£¬¿ÉÒÔ°´Ô·ָ
°´Çø¼ä·Ö±í£ºÀýÈçÓû§±í1 µ½Ò»°ÙÍòÓÃÒ»ÕÅ±í£¬Ò»°ÙÍòµ½Á½°ÙÍòÓÃÒ»ÕÅ±í¡£
hash·Ö±í£ºÍ¨¹ýÒ»¸öÔʼĿ±êid »òÕßÊÇÃû³Æ°´ÕÕÒ»¶¨µÄhash Ëã·¨¼ÆËã³öÊý¾Ý´æ´¢µÄ±íÃû¡£
²ÂÄãϲ»¶£º
ʲôÊǹØÏµÐÍÊý¾Ý¿â£¿¿´ÕâÕÅͼ¾Í¶®ÁË
Êý¾Ý¿âÖÐ×Ö¶ÎÀàÐͺÍÔ¼ÊøÓÐʲô×÷ÓÃ?
Êý¾Ý¿â´æ´¢½á¹¹ÊÇʲôÑùµÄ£¿
¹ØÏµÐÍÊý¾Ý¿âÓë·Ç¹ØÏµÐÍÊý¾Ý¿âÓÐÄÄЩÓÅȱµã£¿
ÀÖÓãµç¾ºjavaÅàѵ¿Î³Ì
±±¾©Ð£Çø