我在SQL Server的varchar
列中存储的日期为'19 -09-2020'。
我想将其转换为“ 2020-09-19”。
我已经尝试过了,但是没有用:
select convert(varchar, '19-09-2020', 23)
答案 0 :(得分:3)
您必须指定转换的源格式:
convert(date, '19-09-2020',105)
如果您实际上确实想要VarChar(当然不应该),则会得到一个DATE:
convert(varchar(10), convert(date, '19-09-2020',105), 23)
答案 1 :(得分:1)
您想要字符串函数吗?
select concat_ws('-', right(mycol, 4), substring(mycol, 4, 2), left(mycol, 2))
from mytable
另一方面,如果要从该字符串生成一个date
,则:
select convert(date, mycol, 105)
from mytable