Mysql 如何在Active Records Designer中进行多重加入

Mysql 如何在Active Records Designer中进行多重加入,mysql,codeigniter,activerecord,Mysql,Codeigniter,Activerecord,大家好,你们能帮我一下吗?我是数据库和Codeigniter的初学者。 如何在活动记录中编写此多个内部联接和左联接查询 SELECT suppliers.*, category.strCategory, category_1.strCategory AS strParent, tblcitylist.city_name FROM ((suppliers INNER JOIN category ON suppliers.intCat=Category.intId) INNER JOIN tblc

大家好,你们能帮我一下吗?我是数据库和Codeigniter的初学者。 如何在活动记录中编写此多个内部联接和左联接查询

SELECT suppliers.*, category.strCategory, category_1.strCategory AS strParent, 
tblcitylist.city_name
FROM ((suppliers INNER JOIN category ON suppliers.intCat=Category.intId) INNER JOIN tblcitylist ON 
suppliers.intCity=tblcitylist.city_id) LEFT JOIN category AS category_1 ON 
category.intParent=Category_1.intId
WHERE status='y';
我有三个表供应商,tblcitylist和类别。要获取具有intCat和intCity的供应商的数据,结果是具有城市名称(城市名称)和类别名称(strCategory)的供应商表的数据。
谢谢

在这种情况下,使用直接SQL似乎更简单。更不用说它执行得更快了

$sql = "SELECT........";
$query = $this->db->query($sql);

这似乎是一种使用直接SQL更简单的情况。更不用说它执行得更快了

$sql = "SELECT........";
$query = $this->db->query($sql);

也许这就是你想要的

$query = $this->db->select('suppliers.*, category.strCategory, category_1.strCategory AS strParent, tblcitylist.city_name')
            ->from('suppliers')
            ->join('category',                  'suppliers.intCat=Category.intId',          'inner')
            ->join('tblcitylist',               'suppliers.intCity=tblcitylist.city_id',    'inner')
            ->join('category as `category_1',   'category.intParent=Category_1.intId',      'left')
            ->where('status','y')
                ->get();

CI DB文档:

也许这就是你想要的

$query = $this->db->select('suppliers.*, category.strCategory, category_1.strCategory AS strParent, tblcitylist.city_name')
            ->from('suppliers')
            ->join('category',                  'suppliers.intCat=Category.intId',          'inner')
            ->join('tblcitylist',               'suppliers.intCity=tblcitylist.city_id',    'inner')
            ->join('category as `category_1',   'category.intParent=Category_1.intId',      'left')
            ->where('status','y')
                ->get();
CI DB文档: