Sql 更改日期格式

Sql 更改日期格式,sql,sql-server,tsql,Sql,Sql Server,Tsql,我有一个名为TimeStampUTC的日期字段,格式为2016-08-01 03:00:00.000但我需要以01/08/2016 我正在使用以下查询 SELECT Convert(varchar(2),DATEPART(DAY, a.TimeStampUTC)) + '/'+ Convert(varchar(2),DATEPART(MONTH, a.TimeStampUTC)) + '/' + Convert(varchar(4),DATEPART(year, a.TimeStampUTC

我有一个名为TimeStampUTC的日期字段,格式为
2016-08-01 03:00:00.000
但我需要以
01/08/2016

我正在使用以下查询

SELECT   Convert(varchar(2),DATEPART(DAY, a.TimeStampUTC)) + '/'+ Convert(varchar(2),DATEPART(MONTH, a.TimeStampUTC)) + '/' + Convert(varchar(4),DATEPART(year, a.TimeStampUTC))   AS Date FROM table AS a   WHERE a.TimeStampUTC > '$startDate' AND a.TimeStampUTC <='$endDate'

选择Convert(varchar(2),DATEPART(DAY,a.TimeStampUTC))+'/'+Convert(varchar(2),DATEPART(MONTH,a.TimeStampUTC))+'/'+Convert(varchar(4),DATEPART(year,a.TimeStampUTC))作为表中的日期,其中a.TimeStampUTC>'$startDate'和a.TimeStampUTC可以使用日期格式()

日期格式(您的日期,%d-%m-%Y)


供您参考:

您可以使用
CONVERT()
函数获取不同的日期时间格式

SELECT   
Convert(varchar(15),TimeStampUTC,103 )   AS Date 
FROM table AS a   
WHERE a.TimeStampUTC > '$startDate' AND a.TimeStampUTC <='$endDate'
选择
将(varchar(15),TimeStampUTC,103)转换为日期
从表中作为

如果a.TimeStampUTC>“$startDate”和a.TimeStampUTC假设您正在查找DD/MM/YYYY,您可以尝试以下方法:

select REPLACE(CONVERT(varchar(15), a.TimeStampUTC, 105),'-','/')

关于
convert(varchar(15),TimeStampUTC,101)
@SankarRaj您是否建议在不单独转换日期、月份和年份的情况下使用此字段?如果它是日期字段,无需解析出组件,您可以转换为多种格式之一的字符串。为什么要单独执行此操作?只需使用以下命令:CONVERT(VARCHAR(10),GETDATE(),103)SQL Server没有
DATE\u FORMAT()
函数,SQL Server 2012和更新版本有
FORMAT()
,但输入日期格式的方式与此处不同。无需用斜线替换短划线,只能使用格式代码
103
。103和105都是以天为先,而不是以月为先。是的,这也行!谢谢你,哈特,我也学到了一些新东西:)
select REPLACE(CONVERT(varchar(15), a.TimeStampUTC, 105),'-','/')