使用FuelPHP 1.3的模型查询表时遇到问题。 条目表有三列('id','status','current','max')。
$result = Model_Entry::query()
->where('status', 1)
->where('count_current', '>=', 'count_max');
我想使用'where'方法的第三个参数作为列名,但它在生成的查询中作为值处理。
实施例
SELECT * FROM `entries` AS `t0` WHERE `t0`.`status` = 1 AND `t0`.`count_current` >= 'count_max'
我的目标
SELECT * FROM `entries` AS `t0` WHERE `t0`.`status` = 1 AND `t0`.`count_current` >= `t0`.`count_max`
任何帮助都将不胜感激。
答案 0 :(得分:2)
要实现您的目标,您必须使用DB::expr()
所以,你的代码将是:
$result = Model_Entry::query()
->where('status', 1)
->where('count_current', '>=', DB::expr('count_max'));