SQLite中的本地日期

时间:2018-06-08 01:32:24

标签: sqlite timestamp-with-timezone

我有包含时间戳的记录,我希望能够按日期分组(根据我当地的时区)。

时间戳已经是ISO 8601字符串(在指定了UTC偏移量的同一本地时区)。我尝试使用SQLite date函数,但似乎只提供UTC日期:

select date(time), time from mytable;

('2001-07-14', '2001-07-15 09:40:02.500000+10:00'),
('2001-07-14', '2001-07-15 09:39:38.500000+10:00'),
('2001-07-21', '2001-07-22 09:46:09.500000+10:00'),
...

在Postgres中,我会采用UTC时间戳并执行((mystring::timestamp at time zone 'UTC') at time zone 'AEST')::date之类的操作。我想如果我的时间戳已经用我想要的偏移量表示,我可以做一个字符串截断(即substr(time,1,10)),但这似乎是不太可读的代码。 SQLite通常可以将时间戳转换为本地化日期吗?

1 个答案:

答案 0 :(得分:0)

如果目标时区当前也是系统本地时区(这是一项尴尬的要求),可以尝试date(time,'localtime')

否则,date(time, '+10 hours')