我有一个问题。
我在 mysql 数据库中有 3 个表。
我想用这些规则连接我的表,多个表的多列连接到同一个表的一列。
MySQL 例子如下。提前致谢。
SELECT
s.*,e.*
, m1.m_id AS 'mid'
, m1.m_name AS 'mname'
, m2.m_id AS 'bid'
, m2.m_name AS 'bname'
, e1.e_id AS 'tid'
, e1.e_name AS 'tname'
, e2.e_id AS 'topid'
, e2.e_name AS 'topname'
FROM s s,e e
INNER JOIN m m1
ON s.s_m_id = m1.m_id
INNER JOIN m m2
ON s.s_b_id = m2.m_id
INNER JOIN e e1
ON s.s_t_id = e1.e_id
INNER JOIN e e2
ON s.s_t_t_id = e2.e_id
WHERE s_id =1
最佳答案
$this->db->select("s.*,e.*
, m1.m_id AS 'mid'
, m1.m_name AS 'mname'
, m2.m_id AS 'bid'
, m2.m_name AS 'bname'
, e1.e_id AS 'tid'
, e1.e_name AS 'tname'
, e2.e_id AS 'topid'
, e2.e_name AS 'topname'");
$this->db->from("FROM s");
$this->db->join("m m1
s.s_m_id = m1.m_id","inner");
$this->db->join("m m2
s.s_b_id = m2.m_id","inner");
$this->db->join("e e1
s.s_t_id = e1.e_id","inner");
$this->db->join(" e e2
s.s_t_t_id = e2.e_id","inner");
$this->db->where('s_id','1');
$this->db->get();
关于php - 多个表多列连接到同一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51291079/