繁体   English   中英

将SQL Server日期时间转换为较短的日期格式

[英]Convert a SQL Server datetime to a shorter date format

我在SQL Server中有一个datetime列,它给我这样的数据10/27/2010 12:57:49 pm我想查询这个列,但只是让SQL Server返回日月和年 - 例如。 2010 10 27或类似的东西。

我应该研究哪些功能?

我应该尝试转换为其他日期数据类型吗? 或者只是将其转换为字符串?

看看CONVERT 第3个参数是您要转换为的日期时间样式。

例如

SELECT CONVERT(VARCHAR(10), GETDATE(), 103) -- dd/MM/yyyy format

试试这个:

print cast(getdate() as date )

如果您需要日期格式的结果,您可以使用:

Select Convert(DateTime, Convert(VarChar, GetDate(), 101))

除了CAST和CONVERT,如果您使用的是Sql Server 2008,您可以转换为日期类型(或使用该类型开头),然后可以选择再次转换为varchar:

declare @myDate date
set @myDate = getdate()
print cast(@myDate as varchar(10))

输出:

2012-01-17

使用SQL Server 2005,我会使用这个:

select replace(convert(char(10),getdate(),102),'.',' ')

结果:2015 03 05

mm / dd / yy的最短日期格式可以通过以下方式获得:

Select Convert(varchar(8),getdate(),1)

如果你有一个datetime字段,给出结果如2018-03-30 08:43:28.177

建议:并且您希望将日期 时间更改为2018-03-30

cast(YourDateField as Date)

对于任何版本的SQL Server: dateadd (dd, datediff (dd,0, getdate ()),0)

原始DateTime字段:[_ Date_Time]

转换为Shortdate:'Short_Date'

CONVERT(date, [_Date_Time]) AS 'Short_Date'

只需添加日期关键字。 例如,从订单中选择日期(orderdate),count(1),其中orderdate>'2014-10-01'按日期分组(orderdate);

orderdate是在日期时间。 此查询将显示该日期的订单而不是日期时间。

应用于日期时间列的日期关键字会将其更改为短日期。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM