Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÓÅ»¯MySQLÊý¾Ý¿â²éѯ

ÓÅ»¯MySQLÊý¾Ý¿â²éѯ
 
   ÔÚÓÅ»¯²éѯÖУ¬Êý¾Ý¿âÓ¦ÓÃ(ÈçMySQL)¼´Òâζ×ŶԹ¤¾ßµÄ²Ù×÷ÓëʹÓá£Ê¹ÓÃË÷Òý¡¢Ê¹ÓÃEXPLAIN·ÖÎö²éѯÒÔ¼°µ÷ÕûMySQLµÄÄÚ²¿ÅäÖÿɴﵽÓÅ»¯²éѯµÄÄ¿µÄ
¡¡¡¡ÈκÎһλÊý¾Ý¿â³ÌÐòÔ±¶¼»áÓÐÕâÑùµÄÌå»á£º¸ßͨÐÅÁ¿µÄÊý¾Ý¿âÇý¶¯³ÌÐòÖУ¬Ò»ÌõÔã¸âµÄSQL²éѯÓï¾ä¿É¶ÔÕû¸öÓ¦ÓóÌÐòµÄÔËÐвúÉúÑÏÖØµÄÓ°Ï죬Æä²»½öÏûºÄµô¸ü¶àµÄÊý¾Ý¿âʱ¼ä£¬ÇÒËü½«¶ÔÆäËûÓ¦ÓÃ×é¼þ²úÉúÓ°Ïì¡£
¡¡¡¡ÈçͬÆäËüѧ¿Æ£¬ÓÅ»¯²éѯÐÔÄܴܺó³Ì¶ÈÉϾö¶¨ÓÚ¿ª·¢ÕßµÄÖ±¾õ¡£ÐÒÔ˵ÄÊÇ£¬ÏñMySQLÕâÑùµÄÊý¾Ý¿â×Ô´øÓÐһЩЭÖú¹¤¾ß¡£±¾ÎļòÒªÌÖÂÛÖî¶à¹¤¾ßÖ®ÈýÖÖ£ºÊ¹ÓÃË÷Òý£¬Ê¹ÓÃEXPLAIN·ÖÎö²éѯÒÔ¼°µ÷ÕûMySQLµÄÄÚ²¿ÅäÖá£
¡¡¡¡1: ʹÓÃË÷Òý
¡¡¡¡MySQLÔÊÐí¶ÔÊý¾Ý¿â±í½øÐÐË÷Òý£¬ÒÔ´ËÄÜѸËÙ²éÕҼǼ£¬¶øÎÞÐèÒ»¿ªÊ¼¾ÍɨÃèÕû¸ö±í£¬ÓÉ´ËÏÔÖøµØ¼Ó¿ì²éѯËÙ¶È¡£Ã¿¸ö±í×î¶à¿ÉÒÔ×öµ½16¸öË÷Òý£¬´ËÍâMySQL»¹Ö§³Ö¶àÁÐË÷Òý¼°È«ÎļìË÷¡£
¡¡¡¡¸ø±íÌí¼ÓÒ»¸öË÷Òý·Ç³£¼òµ¥£¬Ö»Ðèµ÷ÓÃÒ»¸öCREATE INDEXÃüÁΪË÷ÒýÖ¸¶¨ËüµÄÓò¼´¿É¡£ÁбíA¸ø³öÁËÒ»¸öÀý×Ó£º
¡¡¡¡Áбí A
¡¡¡¡mysql£¾ CREATE INDEX idx_username ON users(username);
¡¡¡¡Query OK, 1 row affected (0.15 sec)
¡¡¡¡Records: 1 Duplicates: 0 Warnings: 0
¡¡¡¡ÕâÀ¶Ôusers±íµÄusernameÓò×öË÷Òý£¬ÒÔÈ·±£ÔÚWHERE»òÕßHAVING×Ó¾äÖÐÒýÓÃÕâÒ»ÓòµÄSELECT²éѯÓï¾äÔËÐÐËٶȱÈûÓÐÌí¼ÓË÷ÒýʱҪ¿ì¡£Í¨¹ýSHOW INDEXÃüÁî¿ÉÒԲ鿴Ë÷ÒýÒѱ»´´½¨(ÁбíB)¡£
¡¡¡¡Áбí B
¡¡¡¡mysql> SHOW INDEX from users;
¡¡¡¡| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
¡¡¡¡| users | 1 | idx_username | 1 | username | A | NULL | NULL | NULL | YES | BTREE | |
¡¡¡¡1 row in set (0.00 sec)
¡¡¡¡ÖµµÃ×¢ÒâµÄÊÇ£ºË÷Òý¾ÍÏñÒ»°ÑË«Èн£¡£¶Ô±íµÄÿһÓò×öË÷Òýͨ³£Ã»ÓбØÒª£¬ÇҺܿÉÄܵ¼ÖÂÔËÐÐËٶȼõÂý£¬ÒòΪÏò±íÖвåÈë»òÐÞ¸ÄÊý¾Ýʱ£¬MySQL²»µÃ²»Ã¿´Î¶¼ÎªÕâЩ¶îÍâµÄ¹¤×÷ÖØÐ½¨Á¢Ë÷Òý¡£ÁíÒ»·½Ã棬±ÜÃâ¶Ô±íµÄÿһÓò×öË÷ÒýͬÑù²»ÊÇÒ»¸ö·Ç³£ºÃµÄÖ÷Ò⣬ÒòΪÔÚÌá¸ß²åÈë¼Ç¼µÄËÙ¶Èʱ£¬µ¼Ö²éѯ²Ù×÷µÄËٶȼõÂý¡£Õâ¾ÍÐèÒªÕÒµ½Ò»¸öƽºâµã£¬±ÈÈçÔÚÉè¼ÆË÷Òýϵͳʱ£¬¿¼ÂDZíµÄÖ÷Òª¹¦ÄÜ(Êý¾ÝÐÞ¸´¼°±à¼­)²»Ê§ÎªÒ»ÖÖÃ÷ÖǵÄÑ¡Ôñ¡£
¡¡¡¡2: ÓÅ»¯²éѯÐÔÄÜ
¡¡¡¡ÔÚ·ÖÎö²éѯÐÔÄÜʱ£¬¿¼ÂÇEXPLAIN¹Ø¼ü×ÖͬÑùºÜ¹ÜÓá£EXPLAIN¹Ø¼ü×ÖÒ»°ã·ÅÔÚSELECT²éѯÓï¾äµÄÇ°Ãæ£¬ÓÃÓÚ


Ïà¹ØÎĵµ£º

MysqlÊý¾Ý¿â±íÃû¿Õ¸ñ´¦Àí

½ñÌìʹÓÃPowerDesigner´î½¨ÁËÒ»¸öСÏîÄ¿£¬×îºóÖ´ÐÐÍêSQL½Å±¾Ê±²Å·¢ÏÖÓÐ2ÕűíµÄ±íÃûÖмä¶àÁËÒ»¸ö¿Õ¸ñ£¬²éÍê×ÊÁÏ£¬×îºó²¢¾ªÆæ·¢ÏÖÓ³ÉäÎļþ¾¹È»¶àÁË2¸ö`,¾ÍÊÇshift+Êý×Ö¼ü1µÄÄǸö£¬Ò²¾ÍÊÇËûÔڽű¾ÊÇÕâÑùдµÄ£º
create table `table1`(....);
ÎÊÌâ½â¾ö¡£
PS:´ÓÍøÉÏÕÒµ½µÄ×ÊÁÏ£º
×÷Ϊһ¸öOracle DBA£¬MySQLºÜ¶àSQLÓï·¨ÓëOrac ......

mysqlÖÐunionºÍunion allµÄÇø±ðºÍ×¢Òâµã


×òÌìÓиö¹¦ÄÜҪʵÏÖÅÅÐÐЧ¹û£¬¶øÇÒÊÇËæ»ú°´ÕÕijЩ×ֶεÄ×ÜÖµ£¬µ«ÊǵÚÒ»¸öÓÖÒª²»Ò»Ñù£¬ÒòΪµÚÒ»¸öÈ˸øÁËÇ®£¬ËùÒÔÒªÅŵÚÒ»¡£
´ò¸ö±È·½°É£¬±í(userinfo)ÖÐÓÐÕ⼸¸ö×ֶΣºusername,isvalid,givedmoney,sumip,dayip,monthip,visitcount,regdate
ÏÖÔÚҪʵÏÖÏÔʾÅÅÐÐǰ10λÓû§£¬
     ³öÏÖÔÚÅÅÐеÚһλµ ......

mysqlÎÊÌ⼯×Ü

°²×°ÅäÖÃmysql
http://edu.codepub.com/2009/1213/18710.php
Ò»¡¢
ÏÂÔØ±àÒë°²×°
#cd /usr/local/src/
#wget http://mysql.byungsoo.net/Downloads/MySQL-5.1/mysql-5.1.38.tar.gz
#tar –xzvf mysql-5.1.38.tar.gz ../software/
#./configure
--prefix=/usr/local/mysql //MySQL°²×°Ä¿Â¼
--datadir=/mydata / ......

mysql sql °ÙÍò¼¶Êý¾Ý¿âÓÅ»¯·½°¸

1.¶Ô²éѯ½øÐÐÓÅ»¯£¬Ó¦¾¡Á¿±ÜÃâÈ«±íɨÃ裬Ê×ÏÈÓ¦¿¼ÂÇÔÚ where ¼° order by Éæ¼°µÄÁÐÉϽ¨Á¢Ë÷Òý¡£
2.Ó¦¾¡Á¿±ÜÃâÔÚ where ×Ó¾äÖжÔ×ֶνøÐÐ null ÖµÅжϣ¬·ñÔò½«µ¼ÖÂÒýÇæ
·ÅÆúʹÓÃË÷Òý¶ø½øÐÐÈ«±íɨÃ裬È磺
select id from t where num is null
¿ÉÒÔÔÚnumÉÏÉèÖÃ
ĬÈÏÖµ0£¬È·±£±íÖÐnumÁÐûÓÐnullÖµ£¬È»ºóÕâ
Ñù²éѯ£º
sel ......

mysqlÊý¾Ý¿âlimit²éѯÓÅ»¯

mysqlÊý¾Ý¿âlimit²éѯÓÅ»¯
 
MYSQLµÄÓÅ»¯ÊǷdz£ÖØÒªµÄ¡£ÆäËû×î³£ÓÃÒ²×îÐèÒªÓÅ»¯µÄ¾ÍÊÇlimit¡£mysqlµÄlimit¸ø·ÖÒ³´øÀ´Á˼«´óµÄ·½±ã£¬µ«Êý¾ÝÁ¿Ò»´óµÄʱºò£¬limitµÄÐÔÄܾͼ±¾çϽµ¡£
ͬÑùÊÇÈ¡10ÌõÊý¾Ý
select * from yanxue8_visit limit 10000,10 ºÍ
select * from yanxue8_visit limit 0,10
¾Í²»ÊÇÒ»¸öÊýÁ¿¼¶±ðµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ