mysql - MySQL:获取时间部分重置为午夜(00:00:00)的日期时间字段?
问题描述
我正在尝试PurchaseDate
从表中查询 datetime 列tmp
以及一个自定义列,该PurchaseDate
列是时间为 00:00:00 / 午夜的列:
购买日期 | 一天的开始 |
---|---|
1996-07-16 20:00:00 | 1996-07-16 00:00:00 |
1996-07-10 21:19:00 | 1996-07-10 00:00:00 |
1996-07-12 22:18:00 | 1996-07-12 00:00:00 |
我无法使用DATEDIFF()
. 我怎样才能以最简单的方式做到这一点?
正如建议的那样,我尝试过使用date()
. 但是,这会将列类型转换为日期,我想将其保留为日期时间。
解决方案
转换为date
截断时间部分,然后转换为datetime
:
select
PurchaseDate,
cast(date(PurchaseDate) as datetime) as StartOfDay
from mytable
见现场演示。
推荐阅读
- javascript - 我想在 flexbox 中更改我的板块在 CSS 中的位置
- bash - 根据输出高亮 grep 结果以不同的颜色
- php - 实时服务器上的 VerifyCsrfToken.php 中的 TokenMismatchException
- ios - 适用于所有 iOS 设备的背景图像大小指南
- azure - Azure 数据工厂:URI 无效:Uri 方案太长
- php - PayPal:出现错误:“访问 https://api.sandbox.paypal.com/v1/payments/payment 时出现 Http 响应代码 400。”
- ios - 使用应用内购买或第三方支付网关
- javascript - 使用 Javascript 的 Chrome 扩展
- android - 带有用户范围的 Dagger AndroidInjection
- javascript - 在 react js 中实现谷歌登录