MySQL:对GROUP_CONCAT值进行sorting

简而言之:有什么办法可以对GROUP_CONCAT语句中的值进行sorting?

查询:

GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " &raquo; ") FROM test_competence AS node, test_competence AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt AND node.id = l.competence AND parent.id != 1 ORDER BY parent.lft) SEPARATOR "<br />\n") AS competences 

我得到这一行:

工艺品»细木工

行政»组织

我想要这样:

行政»组织

工艺品»细木工

当然,请参阅http://dev.mysql.com/doc/refman/…tions.html#function_group-concat :

 SELECT student_name, GROUP_CONCAT(DISTINCT test_score ORDER BY test_score DESC SEPARATOR ' ') FROM student GROUP BY student_name; 

你的意思是按顺序吗?

 SELECT _key, COUNT(*) as cnt, GROUP_CONCAT(_value ORDER BY _value SEPARATOR ', ') as value_list FROM group_concat_test GROUP BY _key ORDER BY _key;