老实说,我不太明白我的问题的标题,所以我会解释它。我有2个表,1。用户表,2。创建。
用户表:id_users,名称,性别
创建:id_creation,user_id,类型,年份
在创建表中,user_id可以有多于1个id_users,例如1行数据:
id_creation:1。user_id:1,2,3。类型:书。年:2018年。
然后我想用用户表显示创建表,如:
id_creation:1。user_id:john,mike,susan。类型:书。年:2018年
我已经使用了in_array函数但结果却没有。
我的模特:
function get_all()
{
$this->db->join('users', 'creation.user_id = users.id_users');
return $this->db->get('creation')->result();
}
任何帮助都会如此欣赏
这个问题可以通过find_in_set函数来解决。它会给你3排。另请参阅以下可能产生错误的用例
案例1:1,2,3 - >错误,案例2:1,2,3 - >对,案例3:1,2,3 - >错了,
只是不要在值之间留出空间
function get_all()
{
$this->db->join('users', 'find_in_set(creation.user_id , users.id_users'),'INNER JOIN');
return $this->db->get('creation')->result();
}