我想在codeigniter中使用join选择多个表,但我不想在下面的代码中创建任何条件
public function get_invoice(){
$this->db->select('isp.*,dp.*,ip.*');
$this->db->from('isp');
$this->db->join('dp','dp.status = isp.status');
$this->db->join('isp','isp.status = ip.status');
$this->db->limit(5000);
$this->query = $this->db->get();
if($this->query->num_rows()>0){
return $this->query->result();
}
}
但是我希望在没有条件的情况下获取该表中的所有数据,但在join语句中必须使用条件。
那么如何在codeigniter中无条件地从多个表中选择数据?
感谢您的帮助
答案 0 :(得分:3)
是的,您可以无条件地加入查询。 INNER LEFT RIGHT JOINS需要条件。所以你可以做Cross JOIN.LIKE这个
public function get_invoice(){
$this->db->select('isp.*,dp.*,ip.*');
$this->db->from('isp,dp,ip');
$this->db->limit(5000);
$this->query = $this->db->get();
if($this->query->num_rows()>0)
{
return $this->query->result();
}
}
但是在Cross JOIN,如果你的isp有100,dp有20,ip有50个记录它会产生(100 * 20 * 50)记录。我希望你知道CROSS,LEFT,INNER,RIGHT JOIN做什么。 / p>