我想帮助解决以下问题:-
$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)
关于php - Codeigniter 数据库根据多个值加入两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25686882/