如何在SQL Server中使用Convert函数?

时间:2013-05-20 08:40:06

标签: sql-server

Sl,No  Name      BirthDay
1      Jojin1    2013-05-12 00:00:00.000
2      jojin2    2012-06-12 00:00:00.000
3      jojin3    2015-04-12 00:00:00.000

我有一个名为Datefunction的表。在上面的显示格式的生日,但我需要DD / MM / YYYY。我尝试转换下面的查询但更新成功的消息,但检查表没有发生更改

UPDATE DateFunction
SET BirthDay = CONVERT(VARCHAR(15),BirthDay,103)

2 个答案:

答案 0 :(得分:0)

您无法以该格式存储日期,只能显示它们。

SELECT CONVERT(varchar(10, BirthDay, 103)
FROM [Datefunction]

其他选项(来自我的评论):

  1. 您可以创建文本字段并存储CONVERT函数的结果。请参阅Luv的回答:https://stackoverflow.com/a/16646539/909882

  2. 另一种可能性是在SQL Server中使用DATEFORMAT选项。但是,我认为这只会设置会话的格式;它永远不会改变它。

  3. 此外,您可以使用SET LANGUAGE选择SQL Server在查询中期望的日期格式。请参阅stackoverflow.com/questions/1187127/ ...作为示例

答案 1 :(得分:0)

首先,我完全同意 Diamond GreezeR Damein

但是说我知道OP现在无法实现这些目的。

你能做什么?

ALTER Table temp
ALTER column Datecolumn varchar(15)

update temp
set Datecolumn=CONVERT(VARCHAR(15),getdate(),103)