.net - T-sql、刻度、时间戳

标签 .net sql tsql sql-server-2008

是否可以在 t-sql 中获得像 DateTime.Ticks 这样的 C# 内容?

感谢帮助

最佳答案

您不太可能从 SQL 中获得与 DateTime.Ticks 相同的精度,因为 SQL 不能以那么高的精度表达时间。 SQL Server 只存储大约 1/300 秒的时间,而单个刻度代表一百纳秒或百万分之一秒。

SELECT DATEDIFF(s, '19700101', GETDATE()) 

如果可行的话,上面的查询将为您提供 Unix 风格的时间戳,但要提出任何真正的建议,我需要知道您使用这些数据的目的。如果您需要高于 3 毫秒的分辨率,则需要考虑 SQL 之外的因素。

               DATETIME: 0.01      (3 ms)
QueryPerformanceCounter: 0.0000001 (100 ns)
              DATETIME2: 0.0000001 (7 decimal places, 100 ns)

关于.net - T-sql、刻度、时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5080127/

相关文章:

.net - ADO.NET 是在 .net 中访问数据库的唯一本地方式吗?

c# - 当 dbContext 带有 'using' block 时,如何从 Linq 返回 IQueryable 到 SQL 查询?

sql - "WHERE X > ALL SELECT MAX"与 "WHERE X > SELECT MAX"

sql - 在关系数据库中维护表的版本副本的智能方法(编程注意事项?)

sql - 如何使用SQL查询从表中删除重复项

SQL Server 字符串搜索和评估

c# - ASP.Net:写文件 block ..HTTP文件上传简历

C# - 将 .NET 程序集加载到单独的 AppDomain 中以便卸载它

sql - Rails 清理事件记录查询中的用户输入

sql - 在最近的单个日期连接两个表