【发布时间】:2015-06-29 16:56:06
【问题描述】:
我正在尝试获取下面的sql格式
SELECT * FROM `ci_nest` WHERE `lft` > 9 AND `rgt` < 28 AND `rgt` = `lft` + 1 ORDER BY `lft`
但是 Codeigniter 3 在错误的位置插入引号。
我的代码如下
$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);
codeigniter 查询输出是什么
SELECT *
FROM `ci_nest`
WHERE `lft` > 9 AND `rgt` < 28
AND `rgt` = `lft` `+1`
ORDER BY `lft`
正如您在该行中看到的那样,rgt = lft + 1 被 codeigniter 3 查询构建器错误地格式化。
对此问题的任何解决方法将不胜感激。
【问题讨论】:
-
$this->db->where($rightcol . " = " . $leftcol . '+1'); -
嘿 Nithin,如果您有解决方案,请将其发布为答案而不是评论
标签: php mysql codeigniter