如何在SQL查询中将GMT偏移格式从+/-h转换为+/-hh:mm ?



表以+/-h格式(例如-6)存储这些信息。

我想把它转换成+/-hh:mm(例如-06:00)。

如何更改SQL查询的格式?

Select GMTOffset from dbo.Trip Where ID = 1

当前输出:

tbody> <<tr>
GMTOffset
6

你可以这样做

对于这个问题,值不需要是整数,也可以使用-6,75来得到正确的答案

CREATE TABLE vals (val int)
INSERT INTO vals VALUES (1),(-6),(-8)
select concat(format(floor(val), '00'), ':', format((val % 1) * 60, '00'))
from vals
(无列名)01:0006:00时喂饲

我认为你可以将数据类型更改为DateTimeOffset(7),但我不知道你的原始数据是什么样子,如果你只有+/-小时,那么我想你还需要一些字符串转换。你能举个例子吗?

declare @DateTimeOffset DateTimeOffset (7) = '2023-03-31 01:45:00.0000000 -08:00'
select @DateTimeOffset

最新更新