我的表视频包含字段 videoid ,流派(int-foreign key),语言(int-foreign key) )等我希望从流派表中获取流派的价值,从 movie_languages 获取语言表
表的结构如下:
视频
类型
movie_languages
如何加入这3张表格,以获取与视频表格中每个视频相关的语言和流派。此外,当用户未在表单中选择流派/语言时,将将值0插入表中。这会影响查询吗?我正在使用编码器,我尝试使用以下查询,但无法正常工作。
$this->db->select('video.*,movie_languages.language,genre.genre');
$this->db->join('genre', 'video.genre = genre.id');
$this->db->join('movie_languages', 'video.language = movie_languages.id');
$query = $this->db->get();
请帮帮我。
提前致谢。
答案 0 :(得分:1)
试试这个
$this->db->select('video.*,movie_languages.language,genre.genre')
->from('video')
->join('genre', 'video.genre = genre.id')
->join('movie_languages', 'video.language = movie_languages.id');
$query = $this->db->get();
答案 1 :(得分:1)
在这种情况下你需要一个左连接
试试这个
$query = $this->db
->select('v.*,ml.language,g.genre')
->from('video as v')
->join('movie_languages AS ml', 'v.language = ml.id', 'left outer')
->join('genre AS g', 'v.genre = g.id', 'left outer')
->get();