SELECT *
FROM `ci_nest`
WHERE `lft` > 9
AND `rgt` < 28
AND `rgt` = `lft` + 1
ORDER BY `lft`
< /code>
Тем не менее, CodeIgniter 3 вводит некоторые обратные ножки в неправильном месте. < /p>
my code: < /p>
$this->db->where($leftcol . ' > ' . $leftval . ' AND ' . $rightcol . ' < ' . $rightval);
$this->db->where($rightcol . " = " . $leftcol . " +1");
$this->db->order_by($leftcol);
$query = $this->db->get($this->table_name);
< /code>
Rendered SQL: < /p>
SELECT *
FROM `ci_nest`
WHERE `lft` > 9 AND `rgt` < 28
AND `rgt` = `lft` `+1`
ORDER BY `lft`
Как видите, предполагаемое и `rgt` =` lft` + 1 форматируется неправильно, потому что +1 цитируется как идентификатор. Как этого можно избежать?
Я пытаюсь получить формат SQL ниже < /p> [code]SELECT * FROM `ci_nest` WHERE `lft` > 9 AND `rgt` < 28 AND `rgt` = `lft` + 1 ORDER BY `lft` < /code> Тем не менее, CodeIgniter 3 вводит некоторые обратные ножки в неправильном месте. < /p> my code: < /p> $this->db->where($leftcol . ' > ' . $leftval . ' AND ' . $rightcol . ' < ' . $rightval); $this->db->where($rightcol . " = " . $leftcol . " +1"); $this->db->order_by($leftcol); $query = $this->db->get($this->table_name); < /code> Rendered SQL: < /p> SELECT * FROM `ci_nest` WHERE `lft` > 9 AND `rgt` < 28 AND `rgt` = `lft` `+1` ORDER BY `lft` [/code] Как видите, предполагаемое и `rgt` =` lft` + 1 форматируется неправильно, потому что +1 цитируется как идентификатор. Как этого можно избежать?