将DD-Mon-YYYY转换为DD/MM/YYYY。

6

我需要将格式为 DD-Mon-YYYYdt_of_birth(类型为[varchar] (15))转换为 DD/MM/YYYY

dt_of_birth 存在于不同的表中,需要进行转换并存储到另一个表中,该表与 dt_of_birth 列具有相同的列名。


MSDN关于CAST/CONVERT的文章,包括格式代码。 - Adam Wenger
我总是使用http://www.sql-server-helper.com/tips/date-formats.aspx。 - PowerUser
请查看官方转换格式列表,网址为http://msdn.microsoft.com/en-us/library/aa226054(v=sql.80).aspx。 - invert
4个回答

3

这里

SELECT convert(datetime, '23/10/2016', 103) -- dd/mm/yyyy

4
请阅读链接文章。这是一个样式数字,用于确定 SQL Server 应该将日期格式化为哪种格式。 - pleinolijf

2
尝试这个:-
 SELECT CONVERT(CHAR(11), CONVERT(SMALLDATETIME, '23-Oct-2016', 13), 103);

103 是针对 dd/mm/yyyy 格式的。

查看这个链接


我该如何获取我表格中已有的日期来替换掉“2016年10月23日”这个日期? - user1771122
非常抱歉,我无法清楚地理解您的问题,但您可以使用“select”语句轻松获取它们,然后进行转换。 - Rahul Tripathi
我在我的表格中有一个日期字段,我需要将其转换并存储到另一个表格中。 - user1771122
尝试这样做:-INSERT INTO Table2(Column2) SELECT CONVERT(CHAR(11), CONVERT(SMALLDATETIME, '23-Oct-2016', 13), 103) FROM Table1 - Rahul Tripathi
不需要使用日期“23-Oct-2016”,而是要获取现有的日期并进行转换。 - user1771122

2

这将会起作用。

SELECT CONVERT(CHAR(11), CONVERT(SMALLDATETIME, '27-Jan-2011', 13), 103);

不完全是,它将以字符串 dd\MM\yyyy 格式输出,没有任何时间组件。 - Tariqulazam

0
尝试这个:-
INSERT INTO SecondTable(Column1)
SELECT CONVERT(VARCHAR(10),CAST(dt_of_birth AS DATETIME),103) FROM FirstTable

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接