php - Concat逗号使用mysql分隔名字和姓氏

标签 php mysql group-concat

我有一个像这样的用户表。

id      name      ma_lastname

1      michael       zohans   
2       todd         butler
3       sam          pile

还有另一个名为config_project的表

 id      pass
  1       1,3
  2       3,2
  3       2,1

现在我希望输出看起来像这样

 id               pass

  1      michael zohans, sam pile
  2       sam pile, todd butler
  3       todd butler, michael zohans

最佳答案

您真的应该考虑修复表结构。将其归一化。

现在,应该这样做(按照增加用户 ID 的顺序):

select
    c.id,
    group_concat(concat(u.name, ' ', u.ma_lastname) order by u.id separator ', ') pass
from config_project c
left join users u on find_in_set(u.id, c.pass) > 0
group by c.id;

Demo

关于php - Concat逗号使用mysql分隔名字和姓氏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42037050/

相关文章:

PHP MySQL 选择不在其中的位置

mysql - Doctrine 级联删除查询?

mysql - group_concat重复值

mysql - 使用 MEDIUMTEXT 和页面的 mySQL 中的数据丢失

php - 正确检查 MySQLi OOP 错误

php - 使用 PHP7 的 mariaDB 中的 MySQLi 和 PDO

php - Javascript 重定向 - 用 Php 控制它

php - 连接到本地主机出现错误

jquery - 自动完成类别

mysql - 为多个一对多/一对多表构建 GROUP_CONCAT 的 SQL 查询