mysql - MySQL SELECT rows WHERE 时间在指定的时间窗口内
问题描述
我有一个 MYSQL 数据库,其event_time
时间戳的列格式为:2012-07-18 12:54:45。
我需要选择落入指定时间窗口的任何行,例如 0700 到 1159。如何执行 SELECT 以获取任何日期的这些行?
这是我尝试过的:
SELECT count(id) FROM dataset WHERE event_time >= "07:00" AND <= "11:59"
解决方案
以下是如何从时间戳中提取时间:
SELECT count(id)
FROM dataset
WHERE TIME(event_time) BETWEEN "07:00" AND "11:59"
或者
SELECT count(id)
FROM dataset
WHERE cast(event_time as time) BETWEEN "07:00" AND "11:59"
他们两个对我来说都很好!希望我的回答对您的问题有所帮助。
推荐阅读
- docker - 官方 Docker 初学者教程上的 Docker 卷与持久卷
- optimization - 获取一组行的最优化方法是什么,这些行出现在 java 8 的列表中间?
- ssas - SSAS,如何使维度属性月仅显示当年的月份?
- android - TTS 工作一分钟后停止说话
- java-8 - 转换 Flux 时卡住了
到单声道 ? - javascript - 百万行表(Web 开发)
- beautifulsoup -
使用 beautifulsoup 从 html 解析数据中提取记录 - create-react-app - 卸载 Expo CLI
- arrays - 无法在 Swift 4.2 中将类型“[UITableViewCell.Type]”的值转换为“[_.Type]”
- django - 搜索鹡鸰图像