sql-server - 将长 java 时间戳转换为 sqlserver 日期
问题描述
我有一个很长的 java 时间戳,例如 1576665088205。我需要转换为日期 sqlserver。我可以使用什么功能?
在甲骨文中我使用:
select to_date(to_char((SELECT TIMESTAMP '1970-01-01 00:00:00.000' + NUMTODSINTERVAL( "+time+" / 1000,'SECOND' ) FROM DUAL),'DD.MM.YYYY'),'DD-MM-YYYY') From dual
在后期:
SELECT to_date( TO_CHAR (to_timestamp ("+time+" / 1000),'YYYYMMDD'),'YYYYMMDD')
在sqlserver中?谢谢
解决方案
如果您想使用 T-SQL 语法“翻译”您的语句,一种可能的方法是使用DATEADD()
和DATETIMEFROMPARTS()
函数:
陈述:
SELECT CONVERT(
date,
DATEADD(second, 1576665088205/1000, DATETIMEFROMPARTS(1970, 1, 1, 0, 0, 0, 0))
)
结果:
2019-12-18
推荐阅读
- django - AttributeError:“NoneType”对象没有属性“保存”django
- ruby - Ruby on rails,无法显示实例变量的内容
- python - 使用熊猫创建数据透视表
- ios - 快速获取错误的设备语言
- azure-cosmosdb - Cosmos DB 模拟器拒绝 gremlin 端点的连接
- c# - 如何最好地引用此控件?
- python - 将变量传递给python中的sql查询时出错
- types - 在 Power BI Query 中更改包含文本和数字的列的数据类型
- asp.net-core - 如何阻止 AWS API Gateway 使用 base64 编码二进制响应?
- regex - git commit-msg 钩子的正则表达式