【发布时间】:2012-12-31 12:11:36
【问题描述】:
我在 MYSQL 表中有 2 个日期时间。我需要使用部分日期来获取新的日期时间。
示例:日期 1:2012-10-23 10:44:21,日期 2:2011-06-02 05:40:10
我需要日期 3:2012-10-02 05:40:10 像这样。
从日期 1 开始的年和月,从日期 2 开始。如何做到这一点?
【问题讨论】:
标签: mysql datetime select timestamp
我在 MYSQL 表中有 2 个日期时间。我需要使用部分日期来获取新的日期时间。
示例:日期 1:2012-10-23 10:44:21,日期 2:2011-06-02 05:40:10
我需要日期 3:2012-10-02 05:40:10 像这样。
从日期 1 开始的年和月,从日期 2 开始。如何做到这一点?
【问题讨论】:
标签: mysql datetime select timestamp
试试这个:
SELECT CONCAT(DATE_FORMAT('2012-10-23 10:44:21', '%Y-%m-'), DATE_FORMAT('2011-06-02 05:40:10', '%d %H:%i:%s')) test;
输出是:
test
------------------
2012-10-02 05:40:10
【讨论】:
为了获得年份这样做
YEAR(date1)
月份
MONTH(date1)
从 date2 获取其余部分
SUBSTRING('date2', 8 , 11)
【讨论】:
使用您需要的值构建一个字符串:
Select concat(Year(date 1),
Month(date 1),
+ right(date 2, 11) ) as stringDate
;
然后使用makedate、str_to_date、date_format 函数。
Select str_to_date(stringDate, '%Y-%m-%d %h:%i:%s');
PS:在移动设备上无法输入完整的工作代码。
【讨论】: