首页 > 解决方案 > 如何从 laravel 的 mysql 数据库中的列中减去一分钟?

问题描述

我正在尝试通过更新查询从持续时间列中减去 1 分钟,但它不起作用。持续时间字段是时间类型。

我尝试使用带有新值的减号,但它不起作用。

public function index()
{
    $current = Carbon::now('Asia/Karachi');

    Sale::where('date','=',$current->toDateString())
        ->where('time','<=',$current->toTimeString())
        ->update(['duration' => '- 00:01:00']);
}

我想在这个查询的帮助下减去一分钟。

标签: laraveldatelaravel-5

解决方案


你能用DATE_SUB吗?

就像是

$object->update(['duration' => DB::raw('DATE_SUB(duration, INTERVAL 1 MINUTE)')])

我前面没有 laravel 实例,但这就是我编写 SQL 查询的方式,我认为这与我的 laravel 内存是正确的。


推荐阅读