我需要构建此查询:
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"
但我不知道如何把它们放在一起:<
答案 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();