0

我有一个日期列在yyyy-mm-dd我想将它转换为dd/mm/yyyyy。此列的数据类型是nvarchar(20)。我愿意更改数据类型。我试过的查询是

Update table1
set Column1= Convert(nvarchar(10),column1,101). 

它正在执行,但没有做出任何改变。

4

2 回答 2

3

您的数据并不是真正的日期。它目前是一个字符串,所以Convert不会有任何影响。

您需要:

update table1 set Column1 = Convert(nvarchar(10), Convert(datetime, column1), 101)

但更好的是,您应该考虑将列数据类型更改为datetime,然后在您从表中获取数据convert时将其转换为所需的格式。select

于 2013-04-17T15:02:21.683 回答
0

您需要将值转换两次,

Update table1 
set Column1 = CONVERT(nvarchar(10),CONVERT(datetime, REPLACE(column1,'-','.'), 102), 103)
于 2013-04-17T15:03:10.983 回答