gpt4 book ai didi

TSQL 获取 DateTime 值的部分字符串?

转载 作者:行者123 更新时间:2023-12-04 23:10:58 26 4
gpt4 key购买 nike

我有以下 TSQL 查询来获取不同的日期时间值:

SELECT CONVERT(DATETIME, EndDtField - StartDtField, 120) AS Duration
FROM myTable;

结果将是:
  Duration
1900-01-01 23:02:04.000
....

我试图从这样的结果中获取部分字符串 01 23:02:04.000通过使用 RIGHT()函数(实际上最好是格式为 01 23:02:04 没有 000 ):
SELECT RIGHT(CONVERT(DATETIME, EndDtField - StartDtField, 120), 15) AS Duration
FROM myTable;

结果是:
 Duration
1 1900 11:02PM
...

看起来 RIGHT(..) 的值是 datetime值(value)。即使我指定了 datetime格式为 yyyy-mm-dd hh:mi:ss 的值但我仍然无法得到预期的结果。如何从 Duration 中获取只有日期和时间( dd hh:mi:ss )的部分字符串?我真的不喜欢解析 day , hour , minutesecond值,然后构建一个字符串。

还有其他选择吗?

最佳答案

您可能需要以下 T-SQL:

SELECT RIGHT(CONVERT(VARCHAR, EndDtField - StartDtField, 121), 15) AS Duration FROM myTable;

关于TSQL 获取 DateTime 值的部分字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1266767/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com