str_to_date 更改年份数据 MySQL
str_to_date change year data MySQL
我正在尝试将 mm/dd/yyyy
的日期格式更改为 MySQL 格式 yyyy-mm-dd
。
但是它将数据年份更改为 2020
。
product_history
table:
log_date id stock
10/30/2018 1001 59
10/30/2018 1002 35
10/30/2018 1003 54
10/30/2018 1004 40
10/30/2018 1005 5
10/30/2018 1006 20
10/30/2018 1007 69
...
这是我的代码:
SELECT *, str_to_date(my_schema.product_history.log_date, '%m/%d/%y') as new_log_date FROM my_schema.product_history
输出:
log_date id stock new_log_date
10/30/2018 1001 59 2020-10-30
10/30/2018 1002 35 2020-10-30
10/30/2018 1003 54 2020-10-30
10/30/2018 1004 40 2020-10-30
10/30/2018 1005 5 2020-10-30
10/30/2018 1006 20 2020-10-30
10/30/2018 1007 69 2020-10-30
...
%y
表示两位数的年份。由于您有四位数字,因此您应该使用 %Y
代替:
SELECT *, str_to_date(my_schema.product_history.log_date, '%m/%d/%Y') AS new_log_date
-- Here ----------------------------------------------------------^
FROM my_schema.product_history
我正在尝试将 mm/dd/yyyy
的日期格式更改为 MySQL 格式 yyyy-mm-dd
。
但是它将数据年份更改为 2020
。
product_history
table:
log_date id stock
10/30/2018 1001 59
10/30/2018 1002 35
10/30/2018 1003 54
10/30/2018 1004 40
10/30/2018 1005 5
10/30/2018 1006 20
10/30/2018 1007 69
...
这是我的代码:
SELECT *, str_to_date(my_schema.product_history.log_date, '%m/%d/%y') as new_log_date FROM my_schema.product_history
输出:
log_date id stock new_log_date
10/30/2018 1001 59 2020-10-30
10/30/2018 1002 35 2020-10-30
10/30/2018 1003 54 2020-10-30
10/30/2018 1004 40 2020-10-30
10/30/2018 1005 5 2020-10-30
10/30/2018 1006 20 2020-10-30
10/30/2018 1007 69 2020-10-30
...
%y
表示两位数的年份。由于您有四位数字,因此您应该使用 %Y
代替:
SELECT *, str_to_date(my_schema.product_history.log_date, '%m/%d/%Y') AS new_log_date
-- Here ----------------------------------------------------------^
FROM my_schema.product_history