postgresql - 使用时区调整时间戳
问题描述
我正在使用 postgres,并且我有一个没有时区的时间戳和一个“-2”形式的时区偏移量。如何将偏移量应用于时区?我知道像 date - interval '2 hours' 这样的东西适用于固定的偏移量,但我无法弄清楚如何使用另一列中的变量来做到这一点。
解决方案
像这样的东西应该可以为您解决问题:
CASE WHEN offset_var > 0 THEN timestamp_no_tz + (offset_var || ' hour')::INTERVAL
WHEN offset_var < 0 THEN timestamp_no_tz - (abs(offset_var) || ' hour')::INTERVAL
ELSE timestamp_no_tz END
推荐阅读
- python-3.x - 在 Python 中编写 Octave 命令行并提取输出
- typescript - Typescript Vue:无法安装组件:未定义模板或渲染功能
- asp.net-core - 如何从路由 int .net 核心中删除值
- angular - 如何让角度组件知道单击了哪个按钮以路由到它?
- python - 无法在 Python 中绘制精确的曲率切线
- linux - Prestodb cli Oracle Conenction - 需要帮助 - 错误运行命令:身份验证失败:未经授权
- rust - Serde:使用容器#[serde(default)],但有一些必填字段
- powerbi - Power BI 100% 堆积面积图
- assembly - AArch64 (Cortex-A53) - 理解翻译表
- php - Laravel 实体属性值过滤器多重属性