我正在SQL Server 2005中的日期时间列上运行选择。我可以只选择此日期时间列中的日期?如何从T-Sql中的datetime中提取日期?
6
A
回答
6
最好的方法是:
SELECT DATEADD(day, DATEDIFF(Day, 0, @ADate), 0)
这是因为在内部,SQL Server将所有日期存储为两个整数,其中第一个日期是***自1900年1月1日起的***天数。(第二个是时间部分,存储作为自午夜以来的秒数。 (SmallDateTime
s的秒数或DateTime
s的毫秒数)
使用上述表达式更好,因为它避免了所有转换,直接读取并访问日期内部表示中的第一个整数,而无需执行任何处理......两个零在上面的表达式(代表1900年1月1日)中,也是直接利用W/O处理或转换,因为它们与日期1月1900的SQL服务器内部表示完全匹配(作为整数)。
*注意。实际上,你必须跨越日期边界(midnights)的数量才能从一个日期到另一个日期。
1
可以使用的功能:
day(date)
month(date)
year(date)
+0
是否还有类似的时间部分功能?像小时(日期),分钟(日期)。谢谢 – curiousBoy 2013-11-25 23:30:25
1
而且日期部分()函数可能是一些使用:
http://msdn.microsoft.com/en-us/library/ms174420(SQL.90).aspx
5
是,通过使用convert函数。例如:
select getdate(), convert(varchar(10),getdate(),120)
结果:
----------------------- ----------
2010-05-21 13:43:23.117 2010-05-21
0
DECLARE @dToday DATETIME
SET @dToday = CONVERT(nvarchar(20), GETDATE(), 101)
SELECT @dToday AS Today
这个上午12:00返回今天的日期: '2010-05-21 00:00:00.000' 然后你可以使用根据需要查询@dToday变量
相关问题
- 1. 如何从SSIS中的SQL datetime值提取日期?
- 2. 如何从datetime中提取日期时间作为varchar存储
- 3. 从C#中的DateTime中提取日期部分
- 4. 如何仅从sqlserver中的DateTime信息中获取日期?
- 5. 如何从dateTime对象获取日期
- 6. 从datepickers中提取日期
- 7. TSQL - 如何从文件中读取日期时间与xp_dirtree
- 8. 如何从datetime系列中删除年份 - 日期 - 日期? [python]
- 9. 从DateTime中提取值
- 10. 如何从Oracle中的日期字段中仅提取日期值?
- 11. 如何从datepicker中的日期中提取日期和月份(用文字)?
- 12. 如何从PHP中的日期对象中提取日期字符串
- 13. 如何在tsql中从日期和字符串中创建日期时间
- 14. 如何从日历中获取日期?
- 15. 如何从DateTime中获取长日期格式而无需工作日
- 16. 如何从android中的日期选择器中获取日期?
- 17. 使用C从DateTime获取日期#
- 18. 从sql server获取日期datetime
- 19. 如何从CalendarView中提取日期并显示选定的日期?
- 20. 从字符串中提取日期值
- 21. VBA:从HTML表中提取日期戳
- 22. 从Python对象中提取日期
- 23. 从文件名中提取日期
- 24. 从日期字段中提取月份
- 25. 从文本中提取日期
- 26. 从字符串中提取日期
- 27. 从网页中提取日期
- 28. sqlite从datetime行中选择日期
- 29. 如何从SQL中的字符串提取日期?
- 30. 如何从Laravel的created_at列中提取月份,日期?
在查看回复之前,我已经想清楚了,但这是我走过的路,而且完美无缺。 – 2010-05-25 12:59:45