我有以下条件:where s.event_time AT TIME ZONE 'Europe/Berlin'>= ?
有一个关于“EVENT_TIME”的索引,如果我说where s.event_time >= ?
加上时区计算似乎打破了这一点。有什么简单的方法可以解决这个问题吗?我的天真想法是对参数而不是字段进行“反向时区计算”。因此,如果“在时区x”增加了5个小时,我需要从参数中减去5个小时。对此有什么功能吗?
我有以下条件:where s.event_time AT TIME ZONE 'Europe/Berlin'>= ?
有一个关于“EVENT_TIME”的索引,如果我说where s.event_time >= ?
加上时区计算似乎打破了这一点。有什么简单的方法可以解决这个问题吗?我的天真想法是对参数而不是字段进行“反向时区计算”。因此,如果“在时区x”增加了5个小时,我需要从参数中减去5个小时。对此有什么功能吗?
1条答案
按热度按时间vltsax251#
当我们使用带有
WHERE
子句的任何函数或任何强制转换操作时,DB不能使用索引。为了使用索引,我们必须创建函数索引。使用时区创建索引。示例: