在laravel中从db获取数据时出错

wz8daaqr  于 2021-06-20  发布在  Mysql
关注(0)|答案(3)|浏览(359)

我正在尝试获取与给定时间匹配的数据,我暂时将时间作为字符串传递,但它会出错,
这是我的密码

$final_trade = FinalTrade::where('user_id', $user_id)
        ->where(Carbon::parse('created_at')->format('h:i:s'), '9.30.00')
        ->first();

这是错误,

DateTime::__construct(): Failed to parse time string (created_at) at position 0 (c): The timezone could not be found in the database
c9qzyr3d

c9qzyr3d1#

where方法中的第一个字段必须是表字段的名称

$final_trade = FinalTrade::where('user_id', $user_id)
        ->where('created_at', '9.30.00')
        ->first();

请阅读此laravel查询生成器

relj7zay

relj7zay2#

您需要在parse not string中传递日期https://carbon.nesbot.com/docs/ 阅读文档

ffx8fchx

ffx8fchx3#

你可以用 whereTime 直接无需解析,

$final_trade = FinalTrade::where('user_id', $user_id)
               ->whereTime('created_at', '=', '9:30:00')
                ->first();

相关问题