【发布时间】:2019-10-22 10:56:24
【问题描述】:
我正在尝试获取“使用模式” 所以我需要从我的数据库中提取过去 30 天的所有行,但只提取在 例如 7:00 - 14:00 这些值来自“created_at”,所以它的日期时间 我想只是提取所有内容并检查 str_contais 是否为 14:00 或其他内容 但我敢肯定这不是最好的主意
【问题讨论】:
标签: php database laravel date time
我正在尝试获取“使用模式” 所以我需要从我的数据库中提取过去 30 天的所有行,但只提取在 例如 7:00 - 14:00 这些值来自“created_at”,所以它的日期时间 我想只是提取所有内容并检查 str_contais 是否为 14:00 或其他内容 但我敢肯定这不是最好的主意
【问题讨论】:
标签: php database laravel date time
您应该能够结合 DATE 和 TIME 查询来获得所需的内容。
->whereBetween(DB::raw('DATE(created_at)'), [$from_date, $to_date])
->whereBetween(DB::raw('TIME(created_at)'), [$from_time, $to_time])
示例 SQL
SELECT * FROM table WHERE
DATE(created_at) BETWEEN '2019-09-22' AND '2019-10-22' AND
TIME(created_at) BETWEEN '07:00:00' AND '14:00:00'
【讨论】: