GROUP_CONCAT ÊÇÒ»¸öºÏ²¢¶àÐеĺ¯Êý£¬Ò»°ãÓõÄÉÙ£¬ËùÒԺܶàÈ˶¼²»ÖªµÀ£¬ÎÒÒ²ÊÇÒ»¸ö£¬½ñÌìżȻ¿´µ½£¬¹Ê¼ÇÏ·½·¨£»
GROUP_CONCATµÄÓï·¨ÈçÏ£º
GROUP_CONCAT([DISTINCT] expr [,expr ...][ORDER BY {unsigned_integer | col_name | expr}[ASC | DESC] [,col_name ...]][SEPARATOR str_val])
ÏÂÃæÑÝʾһÏÂÕâ¸öº¯Êý£¬ÏȽ¨Á¢Ò»¸öѧÉúÑ¡¿Î±ístudent_courses£¬²¢Ìî³äһЩ²âÊÔÊý¾Ý¡£
SQL´úÂë
¸´ÖÆ´úÂë ´úÂëÈçÏÂ:
CREATE TABLE student_courses (
student_id INT UNSIGNED NOT NULL,
courses_id INT UNSIGNED NOT NULL,
KEY(student_id)
);
INSERT INTO student_courses VALUES (1, 1), (1, 2), (2, 3), (2, 4), (2, 5);
ÈôÒª²éÕÒѧÉúIDΪ2ËùÑ¡µÄ¿Î³Ì£¬ÔòʹÓÃÏÂÃæÕâÌõSQL£º
SQL´úÂë
¸´ÖÆ´úÂë ´úÂëÈçÏÂ:
mysql> SELECT student_id, courses_id from student_courses WHERE student_id=2;
+------------+------------+
| student_id | courses_id |
+------------+------------+
| 2 | 3 |
| 2 | 4 |
| 2 | 5 |
+------------+------------+
3 rows IN SET (0.00 sec)
Êä³ö½á¹ûÓÐ3Ìõ¼Ç¼£¬ËµÃ÷ѧÉúIDΪ2µÄѧÉúÑ¡ÁË3¡¢4¡¢5Õâ3Ãſγ̡£
·Å ......
Ò»¡¢µ¼³öÊý¾Ý¿âÓÃmysqldumpÃüÁעÒâmysqlµÄ°²×°Â·¾¶£¬¼´´ËÃüÁîµÄ·¾¶£©£º
1¡¢µ¼³öÊý¾ÝºÍ±í½á¹¹£º
mysqldump -uÓû§Ãû -p Êý¾Ý¿âÃû > Êý¾Ý¿âÃû.sql
#/usr/local/mysql/bin/mysqldump -uroot -p abc > abc.sql
Çûسµºó»áÌáʾÊäÈëÃÜÂë
2¡¢Ö»µ¼³ö±í½á¹¹
mysqldump -uÓû§Ãû -p -d Êý¾Ý¿âÃû > Êý¾Ý¿âÃû.sql
#/usr/local/mysql/bin/mysqldump -uroot -p -d abc > abc.sql
¶þ¡¢µ¼ÈëÊý¾Ý¿â
1¡¢Ê×ÏȽ¨¿ÕÊý¾Ý¿â
mysql>create database abc;
2¡¢µ¼ÈëÊý¾Ý¿â
·½·¨Ò»£º
£¨1£©Ñ¡ÔñÊý¾Ý¿â
mysql>use abc;
£¨2£©ÉèÖÃÊý¾Ý¿â±àÂë
mysql>set names utf8;
£¨3£©µ¼ÈëÊý¾Ý£¨×¢ÒâsqlÎļþµÄ·¾¶£©
mysql>source /home/abc/abc.sql;
·½·¨¶þ£º
mysql -uÓû§Ãû -p Êý¾Ý¿âÃû < Êý¾Ý¿âÃû.sql
#mysql -uabc_f -p abc < abc.sql
×¢Ò⣺ÓÐÃüÁîÐÐģʽ£¬ÓÐsqlÃüÁî ......
Ò»¡¢µ¼³öÊý¾Ý¿âÓÃmysqldumpÃüÁעÒâmysqlµÄ°²×°Â·¾¶£¬¼´´ËÃüÁîµÄ·¾¶£©£º
1¡¢µ¼³öÊý¾ÝºÍ±í½á¹¹£º
mysqldump -uÓû§Ãû -p Êý¾Ý¿âÃû > Êý¾Ý¿âÃû.sql
#/usr/local/mysql/bin/mysqldump -uroot -p abc > abc.sql
Çûسµºó»áÌáʾÊäÈëÃÜÂë
2¡¢Ö»µ¼³ö±í½á¹¹
mysqldump -uÓû§Ãû -p -d Êý¾Ý¿âÃû > Êý¾Ý¿âÃû.sql
#/usr/local/mysql/bin/mysqldump -uroot -p -d abc > abc.sql
¶þ¡¢µ¼ÈëÊý¾Ý¿â
1¡¢Ê×ÏȽ¨¿ÕÊý¾Ý¿â
mysql>create database abc;
2¡¢µ¼ÈëÊý¾Ý¿â
·½·¨Ò»£º
£¨1£©Ñ¡ÔñÊý¾Ý¿â
mysql>use abc;
£¨2£©ÉèÖÃÊý¾Ý¿â±àÂë
mysql>set names utf8;
£¨3£©µ¼ÈëÊý¾Ý£¨×¢ÒâsqlÎļþµÄ·¾¶£©
mysql>source /home/abc/abc.sql;
·½·¨¶þ£º
mysql -uÓû§Ãû -p Êý¾Ý¿âÃû < Êý¾Ý¿âÃû.sql
#mysql -uabc_f -p abc < abc.sql
×¢Ò⣺ÓÐÃüÁîÐÐģʽ£¬ÓÐsqlÃüÁî ......
1.ÅäÖÃÃû×ÖΪmyodbcµÄÊý¾ÝÔ´
2.ÔÚstdafx.hÖмÓÉÏ
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")
3.ÔÚ³ÌÐò³õʼ»¯µÄ·½·¨ÖмÓÉÏ
AfxEnableControlContainer();
// ³õʼ»¯COM,´´½¨ADOÁ¬½ÓµÈ²Ù×÷
AfxOleInit();
4.ÔÚºÏÊʵĵط½¼ÓÉÏ
public:_ConnectionPtr m_pConnection;
5.Á¬½Ómysql
m_pConnection.CreateInstance(__uuidof(Connection));
// ÔÚADO²Ù×÷Öн¨ÒéÓï¾äÖÐÒª³£ÓÃtry...catch()À´²¶»ñ´íÎóÐÅÏ¢,ÒòΪËüÓÐʱ»á¾³£³öÏÖһЩÏë²»µ½µÄ´íÎó¡£
try
{
// ´ò¿ª±¾µØAccess¿âstudent.mdb
m_pConnection->Open("myodbc","","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(_T("Êý¾Ý¿âÁ¬½Óʧ°Ü,!"));
return FALSE;
} ......
ÒÔÏÂת×Ô Osss.cn Óʼþ£¬ÇëʹÓùý¡¢ÕýÔÚʹÓûòÕßÖ§³Ö¿ªÔ´µÄÅóÓÑÖ§³ÖÒ»ÏÂMySql£¬Ð»Ð»¡£
ҲϣÍû½ÌÓý²¿¡¢¿Æ¼¼²¿¸øÓèÖ±½ÓÖ§³Ö£¡
´ó¼ÒºÃ£º½ñÌì¿´µ½ÕâÔòÐÂÎÅ£¬Óë´ó¼Ò¹²Ïíһϣ¬MySQL´´Ê¼ÈËÏ£ÍûÖйúÉÌÎñ²¿ÄܽéÈëOracle&SunÊÕ¹º°¸£¬ºÃÏñ²¢Ã»ÓÐʵÖʽøÕ¹¡£¶ø¶íÂÞ˹Áª°î·´Â¢¶Ï»ú¹¹ÔÚÉÏÖÜÕ¹¿ªµ÷²é¡£Èç¹ûÐèÒªÉÌÎñ²¿ÊÜÀí´ËÊ£¬ÊÇ·ñÐèÒªÖйú¿ªÔ´Èí¼þÍÆ½øÁªÃ˰ïÖú?
¾Ý·͸ÉçÏûÏ¢£¬MySQL´´Ê¼ÈËMichael Widenius ÏÖÔÚÕýÔÚѰÇóÖйúºÍ¶íÂÞ˹Õþ¸®µÄ°ïÖú£¬ÒÔ·´¶ÔOracle
ÊÕ¹ºSun¹«Ë¾£¬Michael Widenius ֮ǰºôÓõÅ·ÃËÍ£Ö¹´ËÏî½»Ò×£¬µ«¸ù¾ÝÏÖÓеÄÇé¿öÀ´¿´£¬Å·ÃË»ò½«Åú×¼´ËÏî½»Òס£Îª´ËMichael
WideniusÕýÔÚѰÇóÖйúÕþ¸®µÄ°ïÖú£¬ËûÖ¸³öĿǰÔÚÈ«ÇòÖÐÓг¬¹ý3ÍòMySQLÓû§Ç©Ãû±íʾ·´¶Ô´ËÏî½»Ò×£¬Ï£ÍûÓиü¶àµÄÈ˲ÎÓë½øÀ´¡£ÍøÖ·ÊÇ
helpmysql.org¡£
WideniusÏÖÔÚÏ£ÍûÖйúÉÌÎñ²¿ºÍ¶íÂÞ˹Áª°î·´Â¢¶Ï»ú¹¹ÄܽéÈë´ËÊ£¬×èÖ¹½»Ò×ʼþ½øÒ»²½·¢Õ¹¡£“ËûÃǷdz£Ç¿´ó£¬×ÔÐźͿªÔ´ÓѺõĹú¼Ò£¬ËûÃÇÍêÈ«ÓÐȨÀûºÍ»ú»áÔÚÕâ¼þÊÂÉÏ×öµÄ±ÈÅ·Ã˸üºÃ”£¬Widenius˵¡£Ä¿Ç°¶íÂÞ˹Áª°î·´Â¢¶Ï»ú¹¹ÒѾ¾Í´ËʽéÈëµ÷²é¡£
À´Ô´£ºhttp://osss.cn/news/2010/01/19/mysql%E5%88%9B%E5%A7%8B%E4%BA%B ......
-static 13%
--with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static
¾²Ì¬Á´½ÓÌá¸ß13%ÐÔÄÜ
Unix Socket 7.5%
--with-unix-socket path=/usr/local/mysql/tmp/mysql.sock
ʹÓÃunixÌ×½Ó×ÖÁ´½ÓÌá¸ß7.5%ÐÔÄÜ£¬ËùÒÔÔÚwindowsÏÂmysqlÐÔÄܿ϶¨²»ÈçunixÏÂÃæ
--enable-assembler
The --enable-assembler options of configure allows for
compiling in x86 (and sparc) versions of common
string
operations, which should result in more
performance.
»ã±àx86µÄÆÕͨ²Ù×÷·û£¬¿ÉÒÔÌá¸ßÐÔÄÜ
--with-extra-charsets
=complex×Ö·ûÖ§³Ö
--enable-thread-safe-client
#Compile the client with
threads. Ò²¾ÍÊÇÈÿͻ§¶ËÖ§³ÖÏ̵߳ÄÒâ˼
--with-big-tables
There is a limit of 232
(~4.295E+09) rows in a MyISAM
table. If you build MySQL
with the --with-big-tables
option, the
row limitation is increased to (232
)2
(1.844E+19) rows
--with-ssl
--with-embedded-server
#±àÒë³Éembedded MySQL library (libmysqld.a
),
--enable-local-infile
#ÈÃmysqlÖ§³Ö´Ó± ......
If you set it in the cnf(it may be my.ini file) you will likely need to restart the server. Optionally, that is a dynamic variable and can be SET GLOBAL or SET SESSION from the command line as well.So just do as follows.
mysql>show variables like’max_allowed_packet’;
mysql>set global max_allowed_packet=67108864;
mysql>exit;
Note: If you don't use global or use session,after execute exit command,max_allowed_packet value will be still 1048576.
......