SQLSTATE [42883]:未定义的函数:7错误:函数date_format(日期,未知)不存在

时间:2019-10-03 08:00:05

标签: laravel postgresql pg-query

我创建此时间是为了比较现在的时间与我的表行executes_at中的时间相同。

$dateNow = Carbon::now()->format('Y-m-d');
$hourNow = Carbon::now()->format('H');
$minuteNow = Carbon::now()->format('i');

$recordings = Recording::with('therapy')
        ->where(DB::raw("DATE_FORMAT(executes_at,'%Y-%m-%d')"), '=', $dateNow)
        ->where(DB::raw("DATE_FORMAT(executes_at,'%H')"), '=', $hourNow)
        ->where(DB::raw("DATE_FORMAT(executes_at,'%i')"), '=', $minuteNow)
        ->get();

,它在MySQL中有效,但是因为现在我们使用PostgreSQL,所以我遇到此错误

  

SQLSTATE [42883]:未定义函数:7错误:函数   date_format(日期,未知)不存在

有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

这可以简化。只需生成正确的日期时间格式(无分钟),然后使用(6, _, ids):进行比较即可:

DATE_TRUNC()