mysqlÖÐunionºÍunion allµÄÇø±ðºÍ×¢Òâµã
×òÌìÓиö¹¦ÄÜҪʵÏÖÅÅÐÐЧ¹û£¬¶øÇÒÊÇËæ»ú°´ÕÕijЩ×ֶεÄ×ÜÖµ£¬µ«ÊǵÚÒ»¸öÓÖÒª²»Ò»Ñù£¬ÒòΪµÚÒ»¸öÈ˸øÁËÇ®£¬ËùÒÔÒªÅŵÚÒ»¡£
´ò¸ö±È·½°É£¬±í(userinfo)ÖÐÓÐÕ⼸¸ö×ֶΣºusername,isvalid,givedmoney,sumip,dayip,monthip,visitcount,regdate
ÏÖÔÚҪʵÏÖÏÔʾÅÅÐÐǰ10λÓû§£¬
³öÏÖÔÚÅÅÐеÚһλµÄÒªÊÇgivedmoneyΪ1µÄÓû§£¨±íʾ¸øÁËÇ®£©£¬ ¶øÇÒisvalidΪ1£¨±íʾͨ¹ýÈÏÖ¤£©
ÆäËüµÄ9¸öÓû§ÄØ£¬ÒªÔÚ×ֶΣ¨sumip,dayip,monthip,visitcount£©ÖÐËæ»úÑ¡ÔñÒ»¸ö×÷ΪÅÅÐòµÄÒÀ¾Ý
ÕâÑùµÄsqlÓï¾ä¸ÄÔõÃ´Ð´ÄØ?
ÏÂÃæÊÇÎҵĴ𰸣º
<?php
$arr_orderby=array("sumip","dayip","monthip","visitcount");
$orderby_filed=$arr_orderby(array_rand($arr_orderby) ); //µÃµ½Ëæ»ú×Ö¶Î
$sql="(select username,".$orderby_filed." from userinfo where isvalid=1 and givedmoney=1 limit 1) union (select username,".$orderby_filed." from userinfo where isvalid=1 and givedmoney!=1 limit 9) order by rand(),".$orderby_filed." desc";
?>
ÕâÀïÐèҪעÒâµÄ¼¸µãÊÇ£¬
1£ºunionǰºóµÄselect×Ö¶ÎÒ»¶¨ÒªÒ»Ñù£¬¶øÇÒ˳ÐòÒªÒ»Ñù£¬Èç¹ûÄã²»ÊÇselect * µÄ»°
2£ºµÚ¶þ¸öselectÖУ¬ÊÔÊÔlimit 9ºÍlimit 10ÓÐʲô²»Ò»ÑùµÄЧ¹û
unionºÍunion allµÄÇø±ð¾ÍÊǺóÃæÄÜÌß³öÖØ¸´µÄ½á¹û£¬Èç¹ûÈ·¶¨±íÖÐûÓÐÖØ¸´µÄ×ֶΣ¬½¨ÒéʹÓÃunion all
Ò» UNIONÓï·¨
´úÂë ¸´ÖÆ´úÂë
SELECT ...
UNION [ALL | DISTINCT]
SELECT ...
[UNION [ALL | DISTINCT]
SELECT ...]
SELECT ...
UNION [ALL | DISTINCT]
SELECT ...
[UNION [ALL | DISTINCT]
SELECT ...]
UNIONÓÃÓÚ°ÑÀ´×ÔÐí¶à
Ïà¹ØÎĵµ£º
¡¡¡¡1.mysql
¡¡¡¡ÔÚÈçÏÂÒ³ÃæÏÂÔØmysqlµÄfor linux rpm°ü
¡¡¡¡¡¡http://www.mysql.com/downloads/down...3.52-1.i386.rpm ;
¡¡¡¡¡¡http://www.mysql.com/downloads/down...3.52-1.i386.rpm ;
¡¡¡¡´æÖÁ/home/tmpĿ¼
¡¡¡¡ÃüÁîÁÐ±í£º¡¡
¡¡¡¡cd /home/tmp
¡¡¡¡rpm -ivh MySQL-3.23.52-1.i386.rpm #°²×°mysql serv ......
Ò»Ö±ÒÔΪmysqlËæ»ú²éѯ¼¸ÌõÊý¾Ý£¬¾ÍÓÃ
SELECT
*
from
`
table
`
ORDER
BY
RAND
() LIMIT
5
¾Í¿ÉÒÔÁË¡£
µ«ÊÇÕæÕý²âÊÔһϲŷ¢ÏÖÕâÑùЧÂʷdz£µÍ¡£Ò»¸ö15ÍòÓàÌõµÄ¿â£¬²éѯ5ÌõÊý¾Ý£¬¾ÓȻҪ8ÃëÒÔÉÏ
²é¿´¹Ù·½ÊֲᣬҲ˵rand()·ÅÔÚORDER BY ×Ó¾äÖлᱻִÐж ......
mysqlµÄ find_in_setº¯ÊýʹÓ÷½·¨
ºÜ¶àʱºòÎÒÃÇÔÚÉè¼ÆÊý¾Ý¿âʱÓÐÕâÖÖÇé¿ö,±ÈÈç:
ÓиöÎÄÕ±íÀïÃæÓиötype×Ö¶Î,Ëû´æ´¢µÄÊÇÎÄÕÂÀàÐÍ,ÓÐ 1Í·Ìõ,2ÍÆ¼ö,3Èȵã,4ͼÎÄ .....11,12,13µÈµÈ
ÏÖÔÚÓÐÆªÎÄÕÂËû¼ÈÊÇ Í·Ìõ,ÓÖÊÇÈȵã,»¹ÊÇͼÎÄ,
typeÖÐÒÔ 1,3,4µÄ¸ñʽ´æ´¢.
ÄÇÃÇÎÒÃÇÈçºÎÓÃsql²éÕÒËùÓÐtypeÖÐÓÐ4ͼÎıê×¼µÄÎÄÕÂÄØ ......
Some problems encounted this afternoon, when trying to setup/test mysql capabilities on hypnos and virgil.
1.ERROR 2003 (HY000): Can't connect to MySQL server on 'server-name' (111)
access locally (i.e. from localhost) is fine, when trying remotely got this error. when tried with mysql++ library, ......
½ñÌìʹÓÃPowerDesigner´î½¨ÁËÒ»¸öСÏîÄ¿£¬×îºóÖ´ÐÐÍêSQL½Å±¾Ê±²Å·¢ÏÖÓÐ2ÕűíµÄ±íÃûÖмä¶àÁËÒ»¸ö¿Õ¸ñ£¬²éÍê×ÊÁÏ£¬×îºó²¢¾ªÆæ·¢ÏÖÓ³ÉäÎļþ¾¹È»¶àÁË2¸ö`,¾ÍÊÇshift+Êý×Ö¼ü1µÄÄǸö£¬Ò²¾ÍÊÇËûÔڽű¾ÊÇÕâÑùдµÄ£º
create table `table1`(....);
ÎÊÌâ½â¾ö¡£
PS:´ÓÍøÉÏÕÒµ½µÄ×ÊÁÏ£º
×÷Ϊһ¸öOracle DBA£¬MySQLºÜ¶àSQLÓï·¨ÓëOrac ......