【发布时间】:2020-09-19 08:10:13
【问题描述】:
我在 SQL Server 的 varchar 列中存储了日期为“19-09-2020”。
我想将其转换为“2020-09-19”。
我试过了,但它不起作用:
select convert(varchar, '19-09-2020', 23)
【问题讨论】:
标签: sql sql-server string datetime
我在 SQL Server 的 varchar 列中存储了日期为“19-09-2020”。
我想将其转换为“2020-09-19”。
我试过了,但它不起作用:
select convert(varchar, '19-09-2020', 23)
【问题讨论】:
标签: sql sql-server string datetime
您必须指定转换的源格式:
convert(date, '19-09-2020',105)
如果您真的想要再次使用 VarChar(当然,您不应该),这会导致 DATE:
convert(varchar(10), convert(date, '19-09-2020',105), 23)
【讨论】:
你想要字符串函数吗?
select concat_ws('-', right(mycol, 4), substring(mycol, 4, 2), left(mycol, 2))
from mytable
另一方面,如果您想从该字符串生成date,那么:
select convert(date, mycol, 105)
from mytable
【讨论】: