无法使用CodeIgniter查询构建器构建查询

时间:2017-05-30 15:13:31

标签: php sql codeigniter query-builder

我需要构建此查询:

SELECT p.*, c.nazwa, c.url 
FROM posty p 
INNER JOIN posty_kategorie pc
ON pc.id_posta = p.id 
INNER JOIN kategorie c 
ON c.id = pc.id_kategorii
WHERE p.url = "przykladowy-tytul-strony"

使用CodeIgniter的Query Builder类。

我现在拥有的只有:

return $this->db->from('posty')
                ->join('posty_kategorie', 'posty_kategorie.id_posta = posty.id', 'inner')
                ->join('kategorie', 'kategorie.id = posty_kategorie.id_kategorii')
                ->where('posty.url', $url)
                ->get()->row();

但这并不像我想要的那样有效。它必须进行此查询:

SELECT p.*, c.nazwa, c.url 
FROM posty p 
INNER JOIN posty_kategorie pc
ON pc.id_posta = p.id 
INNER JOIN kategorie c 
ON c.id = pc.id_kategorii
WHERE p.url = "przykladowy-tytul-strony"

但我不知道如何把它们放在一起:<

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

$this->db->select('p.*,c.nazwa,c.url');
$this->db->from('posty p');
$this->db->join('posty_kategorie pc ', 'pc.id_posta = p.id','inner');
$this->db->join('kategorie c ', 'c.id_posta = pc.id_kategorii','inner');
$this->db->where('p.url','przykladowy-tytul-strony');
$query = $this->db->get();
return $query->result();