如何从mysql中获取数据哪个列有逗号运算符的数据? [重复]

问题描述 投票:-1回答:2

这个问题在这里已有答案:

任务表

id      assign_to       task
1       1,2,4           Development
2       2,5,3           Testing

员工表

id      Name
1       Dhawan
2       Sachin
3       Dhoni
4       Virat
5       Rohit

在这里,我试图从employee表中获取所有员工姓名,并进入任务表中的assign_to字段。所以我的输出将在下面

id      assign_to               task
1       Dhawan, Sachin,Virat    Development
2       Virat, Rohit, Dhoni     Testing

下面查询我写道。任何人都可以建议我这将是什么问题

select t.*,  from task t inner join employee e on e.id in (t.assign_to)
mysql sql mysql-workbench rdbms
2个回答
1
投票

将您的查询更新为:

 select t.*,  from task t inner join 
employee e on FIND_IN_SET(e.id, t.assign_to) > 0 
GROUP BY e.id

0
投票

请试试这个

select task.id,
(select group_concat(employee.name,',')  
from employee employee  
where  find_in_set(employee.id, task.assign_to)> 0 )  as emp ,   
task.task   
from task task;
© www.soinside.com 2019 - 2024. All rights reserved.