问题:对in()的查询结果进行行转列,使用group_concat时,会出现排序问题
select group_concat(projectName ) location
from x_project
where projectId in (2,7,12)
查询结果:
解决方案:在group_concat()中使用order by field 或 order by find_in_set
select group_concat(projectName order by FIELD(projectId, 2,7,12) ) location
from x_project
where projectId in (2,7,12)
select group_concat(projectName order by FIND_IN_SET(projectId, '2,7,12') ) location
from x_project
where projectId in (2,7,12)
查询结果: