如何将欧洲格式的字符串日期转换为有效的 mysql 日期格式?
How to convert a string date in european format to a valid mysql date format?
我正在尝试通过数据库中的表单插入 2 个日期,表单中的日期格式是这样的字符串 01/01/2020,数据库中的字段是 DATE,所以我知道这需要 YYYY/MM/DD 对吗?
我试过这个查询:
INSERT INTO property_tenant (id_user, id_property, check_in, check_out)
VALUES(1375965, 119, STR_TO_DATE("01/01/2020", '%d/%m/%y'),
STR_TO_DATE("01/01/2021", '%d/%m/%y'));
我也试过这个:
DATE_FORMAT(STR_TO_DATE("01/01/2021", '%d/%m/%y'), '%Y-%m-%d')
但我不断收到此错误:
code: 'ER_TRUNCATED_WRONG_VALUE', errno: 1292, sqlMessage:
"Truncated incorrect date value: '01/01/2020'"
你可以直接使用STR_TO_DATE()
函数作为
STR_TO_DATE('1,1,2021','%d,%m,%Y')
已经生成了日期结果。事实上,日期列在 table 中没有格式。 fmt
部分('%d,%m,%Y'
)只需要表达符合时间部分(day
,month
,Year
)的文字片段即可正确排序.
我正在尝试通过数据库中的表单插入 2 个日期,表单中的日期格式是这样的字符串 01/01/2020,数据库中的字段是 DATE,所以我知道这需要 YYYY/MM/DD 对吗?
我试过这个查询:
INSERT INTO property_tenant (id_user, id_property, check_in, check_out)
VALUES(1375965, 119, STR_TO_DATE("01/01/2020", '%d/%m/%y'),
STR_TO_DATE("01/01/2021", '%d/%m/%y'));
我也试过这个:
DATE_FORMAT(STR_TO_DATE("01/01/2021", '%d/%m/%y'), '%Y-%m-%d')
但我不断收到此错误:
code: 'ER_TRUNCATED_WRONG_VALUE', errno: 1292, sqlMessage: "Truncated incorrect date value: '01/01/2020'"
你可以直接使用STR_TO_DATE()
函数作为
STR_TO_DATE('1,1,2021','%d,%m,%Y')
已经生成了日期结果。事实上,日期列在 table 中没有格式。 fmt
部分('%d,%m,%Y'
)只需要表达符合时间部分(day
,month
,Year
)的文字片段即可正确排序.