Lin*_*nas 3 php kohana kohana-db
您好,我正在使用Kohana Query Builder构建查询,我正在尝试获取此类查询:
UPDATE `report_count` SET `report_count`= report_count + 1;
Run Code Online (Sandbox Code Playgroud)
我现在拥有的是:
DB::update('report_count')->set(array('report_count' => 'report_count + 1'));
Run Code Online (Sandbox Code Playgroud)
并输出此查询:
UPDATE `report_count` SET `report_count` = 'report_count + 1'
Run Code Online (Sandbox Code Playgroud)
所以我的问题是它放' '了report_count + 1.我怎样才能删除这些?
您需要使用表达式对象.Kohana的查询构建器允许您使用DB::expr.
查询构建器通常会根据您的需要转义其所有输入,但作为表达式对象提供的文本将按原样包含在查询中.
文档中给出的示例基本上是您的确切情况:
$query = DB::update('users')->set(array('login_count' => DB::expr('`login_count` + 1')))->where('id', '=', $id);
Run Code Online (Sandbox Code Playgroud)
这会生成如下所示的查询(id45 的值只是一个示例):
UPDATE `users` SET `login_count` = `login_count` + 1 WHERE `id` = 45
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5138 次 |
| 最近记录: |