我有一个日期列(文本为sqlite不存储日期)称为日期。这些日期以UTC存储。我有一个时区"欧洲/伦敦"(这可以更改,使本地时间在这里不可行),我想用这个时区获得所有星期一。但是,如果我只选择where strftime('%w', Dates)=01,则只能从UTC时间获取星期一。我想从"Europe/London"或任何其他时区获取星期一。如何才能做到这一点?编辑:澄清了我的问题,本地时间在这里不起作用
where strftime('%w', Dates)=01
deyfvvtc1#
local_ts和local_day_of_week中的值取决于系统设置
local_ts
local_day_of_week
with cte_utc_dates (utc_ts) as ( values ('2022-11-22 00:00:00'), ('2022-11-22 01:00:00'), ('2022-11-22 02:00:00'), ('2022-11-22 03:00:00'), ('2022-11-22 04:00:00'), ('2022-11-22 05:00:00'), ('2022-11-22 06:00:00'), ('2022-11-22 07:00:00'), ('2022-11-22 08:00:00'), ('2022-11-22 09:00:00'), ('2022-11-22 10:00:00'), ('2022-11-22 11:00:00'), ('2022-11-22 12:00:00'), ('2022-11-22 13:00:00'), ('2022-11-22 14:00:00'), ('2022-11-22 15:00:00'), ('2022-11-22 16:00:00'), ('2022-11-22 17:00:00'), ('2022-11-22 18:00:00'), ('2022-11-22 19:00:00'), ('2022-11-22 20:00:00'), ('2022-11-22 21:00:00'), ('2022-11-22 22:00:00'), ('2022-11-22 03:00:00')) select utc_ts, strftime('%w', utc_ts) as utc_day_of_week, datetime(utc_ts, 'localtime') as local_ts, strftime('%w', datetime(utc_ts, 'localtime')) as local_day_of_week from cte_utc_dates;
1条答案
按热度按时间deyfvvtc1#
local_ts
和local_day_of_week
中的值取决于系统设置