基于多个值的两列上的Codeigner数据库Join


Codeigniter database Join on two columns based on multiple values

我想在以下查询中提供帮助:-

    $this->db->select('nbr.*, dm.dma, st.abbrev as state,unit.size_title as ad_size_title,unit_u.size_title as ad_unit_title,di.size_title as ad_di_title,color.title as color_title');
$this->db->from('default_new_buy_request as nbr');
$this->db->join('default_dmadata as dm', 'nbr.dma_id = dm.id', 'left');
$this->db->join('default_states as st', 'nbr.state_id = st.id', 'left');

nbr.dma_id带有多个逗号(',')分隔的值,并将与default_dmadata中的所有dm.id进行比较,但这里它只将一个值与dm.id进行比较。简而言之,我需要一个explode()类型的功能来比较每个值和第二列。

你能试试吗?

如果逗号中的值

在MYSQL中,尝试使用Codeigniter

LEFT JOIN default_dmadata dm ON FIND_IN_SET(dm.dma_id, dm.id)