Parse date in MySQL(在 MySQL 中解析日期)
问题描述
如何将以下内容转换为用于插入/更新的日期到 MySQL 中的 TIMESTAMP
或 DATE
字段?
How to convert the following into date for insertion/update into a TIMESTAMP
or DATE
field in MySQL?
'15-Dec-09'
DATE_FORMAT()
用于格式化日期,反之则不然.
DATE_FORMAT()
is used to format date, but not the other way around.
推荐答案
您可能想要使用 STR_TO_DATE()
函数.它是 DATE_FORMAT()
函数.
You may want to use the STR_TO_DATE()
function. It's the inverse of the DATE_FORMAT()
function.
STR_TO_DATE(str,format)
这是 DATE_FORMAT()
函数的反函数.它需要一个字符串 str
和一个格式字符串 format
.如果格式字符串包含日期和时间部分,或者 DATE
或 TIME
,STR_TO_DATE()
返回一个 DATETIME
值> value 如果字符串只包含日期或时间部分.如果从 str
中提取的日期、时间或日期时间值不合法,STR_TO_DATE()
将返回 NULL
并产生警告.
This is the inverse of the DATE_FORMAT()
function. It takes a string str
and a format string format
. STR_TO_DATE()
returns a DATETIME
value if the format string contains both date and time parts, or a DATE
or TIME
value if the string contains only date or time parts. If the date, time, or datetime value extracted from str
is illegal, STR_TO_DATE()
returns NULL
and produces a warning.
示例:
SELECT STR_TO_DATE('15-Dec-09', '%d-%b-%y') AS date;
+------------+
| date |
+------------+
| 2009-12-15 |
+------------+
1 row in set (0.00 sec)
这篇关于在 MySQL 中解析日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 MySQL 中解析日期


基础教程推荐
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
- 带更新的 sqlite CTE 2022-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
- 从字符串 TSQL 中获取数字 2021-01-01
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 带有WHERE子句的LAG()函数 2022-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01