php - 如何从一行中选择多个名称?

标签 php mysql codeigniter

这是我的 table 的样子

Table A-----------------
ID . Color . IDDOCT
 1 .   Red . 3
 2 .  Blue . 2,4
 3 .  Cyan . 4
------------------------

Table B-----------------
ID . NAME
 1 . HAARIS
 2 . STEAVE
 3 . DONY
 4 . CLAYS
------------------------

我要问的是我可以在表 A 中的多个 ID 上获取表 B 的名称,并且我需要显示在表 php 上。

最佳答案

这个已经过测试并且工作得很好:

$sql = 'SELECT table_a.color AS a_color, GROUP_CONCAT(table_b.name) AS b_names FROM table_a JOIN table_b ON FIND_IN_SET(table_b.id, table_a.iddoct) GROUP BY table_a.color';
$query = $this->db->query($sql);
$result = $query->result_array();

关于php - 如何从一行中选择多个名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53844563/

相关文章:

php - 学习 PHP 的基础知识需要多长时间?

左连接表与其他两个表的结果的 MySQL 查询问题

php - 所有页面的 url codeigniter 多语言

javascript - 如何使用两个不同用途的提交按钮ajax和表单提交

php - 如何从另一个 php 页面更改一个页面的标签文本?

php - 仅获取新条目数据库 mysql

php - 我如何将今天的日期设置为html中的默认日期

php - 如何获取主类别

php - 计算列,其中 column1 LIKE %something%

php - 文本溢出可以在 phpspreadsheet 中使用吗?