我正在使用 CI 和 hmvc..
我有 3 张 table :
表 1:
s_id | s_name | s_date
表 2:
n_id | n_name | n_date
表3包含表1和表2之间的关系:
s_id | n_id
我想通过 id 获取表 1 或表 2 中的值。
一旦我有了表 2 的 n_id
,我想查找并获取表 3 和表 1 中的相关值。相关值通过具有相同的 id 来匹配。
请帮忙。
最佳答案
我认为这可能对你有用。我过去在使用 CI 时做过类似的事情。这是您的模型中应该包含的 Active Records 查询。这个查询可以缩短,但我让它变得冗长,这样你就可以看到发生了什么。
public function get_ids($n1_id){
$this->db->select('*');
$this->db->from('table_3');
$this->db->join('table_2', 'table_2.n1_id = table_3.n1_id');
$this->db->join('table_1', 'table.s1_id = table_3.s1_id');
$this->db->where('n1_id', $n1_id);
$query = $this->db->get();
return $query;
}
基本上,一旦您拥有其中一个 ID,您就可以将其作为参数传递,并从表 3 中选择与该 ID 匹配的所有行。然后在表 3 中的匹配行上连接表 1 和表 2。
请告诉我这是否有效。我还没有制作表格来测试它。
关于mysql - 我需要多对多关系数据库的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28966478/