我的日期列位于 yyyy-mm-dd 我想将其转换为 dd / mm / yyyyy 。此列的数据类型为 nvarchar(20)。我愿意更改数据类型。我试过的查询是
Update table1
set Column1= Convert(nvarchar(10),column1,101).
它正在执行,但没有做任何改变。
答案 0 :(得分:3)
您的数据确实是一个日期。它目前是一个字符串,因此Convert
不会产生任何影响。
你需要:
update table1 set Column1 = Convert(nvarchar(10), Convert(datetime, column1), 101)
但更好的是,您应该考虑将列数据类型更改为datetime
,然后convert
当您从表中select
数据时,将{{1}}更改为所需的格式。
答案 1 :(得分:0)
您需要将值转换两次,
Update table1
set Column1 = CONVERT(nvarchar(10),CONVERT(datetime, REPLACE(column1,'-','.'), 102), 103)