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

时间:2018-12-19 04:23:52

标签: php mysql codeigniter

这是我的桌子样子

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上显示。

2 个答案:

答案 0 :(得分:1)

这是经过测试的,可以正常工作:

$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();

答案 1 :(得分:0)

您可以尝试以下查询:

SQL:

{{1}}

我希望它将对您有帮助。