sql - 从 SQL Server 2012 查询结果中减去小时数

标签 sql sql-server datetime sql-server-2012

我正在 SQL Server 2012 Management Studio 中的警报系统信号自动化平台数据库上运行查询,但遇到了一些问题。

我的查询运行得很好,但我无法将结果细化到我想要的水平。

我正在选择一些格式为DATETIME的列,我只想获取列中的值并从中减去4小时(即从GMT到EST),然后输出< em>那个值进入查询结果。

我能找到的有关 DATESUB() 或类似命令的所有文档都显示了语法中具有特定 DATETIME 的示例,但我没有任何具体内容,只有 138,000 行和我想要调整时区的列。

我是否遗漏了一些大的东西,或者在操作查询结果后我只需要继续手动调整?另外,为了以防万一,我有只读访问级别,并且对以任何方式更改表数据不感兴趣。

最佳答案

好吧,对于初学者来说,您需要知道您不仅可以在静态值上使用函数,还可以在列上使用它们。

看来你想要的只是:

SELECT DATEADD(HOUR,-4,YourColumnWithDateTimes)
FROM dbo.YourTable

关于sql - 从 SQL Server 2012 查询结果中减去小时数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32895736/

相关文章:

sql - 如何根据 postgresql 中的另一列对字符串聚合进行排序?

mysql - 选择主表中包含两个不同索引的行到另一个表上的记录

java - 使用 WHERE 条件过滤游标

c++ - 如何使用 Oracle 存储过程中的 C++ 函数

sql - 将查询转换为 View 或表值函数

sql - 如何使用 T-SQL 获取在主键字段中生成的最后一个值

sql - 仅从同一表中的另一个 DateTime 列更新 SQL Server DateTime 列中的时间

python - 有没有一种简单的方法可以将 ISO 8601 持续时间转换为 timedelta?

java - 无法将 UTC 转换为本地时间

java - 打印时间 HH :MM format