mysql - 我需要多对多关系数据库的帮助

标签 mysql codeigniter many-to-many

我正在使用 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/

相关文章:

c# - 具有重复条目的多对多关系

java - hibernate 中删除连接表数据的多对多关系?

mysql - PHP MySQL 插入查询未按预期工作

php - PHP 中的 ispostback(.NET) 等价物是什么?

json - CodeIgniter Rest Server 处理 JSON POST 请求

php - Codeigniter: HELPERS 和 $CI =& get_instance();

php - 如何简化codeigniter中的模型函数

mysql - 具有来自不同表的字段的人员列表

mysql - 如何在该表的左连接后使用左外连接?

entity-framework - 单个实体上的 EF 多对多