postgresql timestamp类型字段,时间加3个小时
在 PostgreSQL 中对 TIMESTAMP 类型字段加 3 小时非常简单核心是使用 INTERVAL 关键字。以下是详细用法和注意事项---## ✅ 核心语法PostgreSQL 支持直接对时间类型进行算术运算。sql-- 基本写法字段名 INTERVAL 3 hours-- 简写写法字段名 3 hours::INTERVAL-- 使用 MAKE_INTERVAL 函数PostgreSQL 9.5字段名 MAKE_INTERVAL(hours 3)---## 常见场景示例假设表名为 orders时间字段为 created_at。### 1. 查询时加 3 小时不修改原数据sqlSELECTid,created_at,created_at INTERVAL 3 hours AS adjusted_timeFROM orders;### 2. 更新字段值永久修改sqlUPDATE ordersSET created_at created_at INTERVAL 3 hoursWHERE id 1001;### 3. 批量更新例如修正时区错误sqlUPDATE ordersSET created_at created_at INTERVAL 3 hoursWHERE created_at 2023-01-01 00:00:00;### 4. 插入时直接计算sqlINSERT INTO orders (created_at)VALUES (NOW() INTERVAL 3 hours);---## ⚠️ 重要区别TIMESTAMP vs TIMESTAMPTZPostgreSQL 有两种时间类型行为略有不同| 类型 | 全称 | 存储方式 | 加 3 小时的效果 || :--- | :--- | :--- | :--- || **TIMESTAMP** | TIMESTAMP WITHOUT TIME ZONE | 存字面值 | 直接数值 3 小时**不考虑时区** || **TIMESTAMPTZ** | TIMESTAMP WITH TIME ZONE | 存 UTC 时间 | 绝对时间 3 小时**显示时自动转换时区** |### 示例对比sql-- 假设当前会话时区是 08:00 (北京)-- 1. TIMESTAMP (无时区)SELECT 2023-10-01 12:00:00::TIMESTAMP INTERVAL 3 hours;-- 结果2023-10-01 15:00:00 (简单加法)-- 2. TIMESTAMPTZ (有时区)SELECT 2023-10-01 12:00:0008::TIMESTAMPTZ INTERVAL 3 hours;-- 结果2023-10-01 15:00:0008 (绝对时间流逝了 3 小时) **建议**现代应用推荐统一使用 **TIMESTAMPTZ**存储 UTC 时间避免夏令时和时区混乱问题。---## ️ 容易混淆时间运算 vs 时区转换有时候“加 3 个小时”其实是想“转换成 3 时区的时间”这是两个不同的概念### 1. 时间运算流逝了 3 小时sql-- 时间向后推移 3 小时SELECT created_at INTERVAL 3 hours;### 2. 时区转换显示为 3 时区sql-- 将时间转换为 UTC3 时区的显示时间SELECT created_at AT TIME ZONE UTC3;-- 或者SELECT created_at AT TIME ZONE Asia/Riyadh;---## 性能与索引优化### ❌ 避免在索引列上做运算如果在 WHERE 条件中对字段加时间会导致**索引失效**。sql-- 不推荐索引失效全表扫描SELECT * FROM ordersWHERE created_at INTERVAL 3 hours 2023-10-01;### ✅ 推荐写法移项计算将运算移到常量一侧保留字段原样。sql-- 推荐可以使用 created_at 上的索引SELECT * FROM ordersWHERE created_at 2023-10-01 - INTERVAL 3 hours;---## ️ 其他常用 INTERVAL 写法PostgreSQL 的 INTERVAL 非常灵活sql-- 加 3 小时 30 分钟 INTERVAL 3 hours 30 minutes-- 加 90 分钟 INTERVAL 90 minutes-- 加 1 天 3 小时 INTERVAL 1 day 3 hours-- ISO 8601 格式 INTERVAL PT3H -- Period Time 3 Hours---## ☕ 结合 Java 开发建议既然你之前问了 Java Date如果在 Java 中处理 Postgres 的 TIMESTAMP1. **Java 端计算**推荐在 Java 代码中算好时间再传给 SQL避免 SQL 依赖。java// Java 8LocalDateTime newTime oldTime.plusHours(3);preparedStatement.setTimestamp(1, Timestamp.valueOf(newTime));2. **数据库端计算**如果必须用 SQL如批量修正使用上述 INTERVAL 语法。3. **类型映射*** Postgres TIMESTAMP ↔ Java LocalDateTime* Postgres TIMESTAMPTZ ↔ Java Instant 或 OffsetDateTime---## 总结| 需求 | SQL 语句 || :--- | :--- || **最通用写法** | 字段 INTERVAL 3 hours || **更新数据** | UPDATE 表 SET 字段 字段 INTERVAL 3 hours || **查询条件 (优化)** | WHERE 字段 目标时间 - INTERVAL 3 hours || **时区转换** | 字段 AT TIME ZONE UTC3 |如果你的业务涉及多时区用户请务必使用 TIMESTAMPTZ 并在应用层处理时区显示数据库层只做绝对时间的加减。

相关新闻

【学习】学习使用Qoder skill功能

【学习】学习使用Qoder skill功能

原文章链接: Qoder全面支持Skills了,我手搓了一个「面试官Skill」-技术派

2026/7/7 2:11:53 阅读更多 →
2026年市场可靠的房产获客平台口碑排名TOP10,你知道几

2026年市场可靠的房产获客平台口碑排名TOP10,你知道几

在房产行业,获客一直是从业者们头疼的难题。传统的获客方式不仅成本高、效率低,还很难精准触达目标客户。不少房产经纪人常常抱怨,投入了大量的时间和金钱,却收获寥寥,客户资源少得可怜,成交率更是低得让人…

2026/7/7 5:31:22 阅读更多 →
基于SPWM控制与电流闭环的前馈解耦的ANPC并网单闭环仿真模型研究

基于SPWM控制与电流闭环的前馈解耦的ANPC并网单闭环仿真模型研究

anpc并网闭环仿真模型 直流侧采用稳定的电压源,逆变之后接入电网 输出电压电流同相位,单闭环。 spwm控制电流闭环和前馈解耦控制。 输出波形良好。 通过锁相环实现相位的控制。 与npc的控制方法和原理相同,其他电路拓扑也差不多, …

2026/5/17 2:41:32 阅读更多 →

最新新闻

Minecraft 1.21终极中文体验:Masa模组全家桶完整汉化指南

Minecraft 1.21终极中文体验:Masa模组全家桶完整汉化指南

Minecraft 1.21终极中文体验:Masa模组全家桶完整汉化指南 【免费下载链接】masa-mods-chinese 一个masa mods的汉化资源包 项目地址: https://gitcode.com/gh_mirrors/ma/masa-mods-chinese 还在为Minecraft 1.21中Masa模组的英文界面而烦恼吗?ma…

2026/7/7 21:25:32 阅读更多 →
Python算法交易系统实战:从行情接入到实盘执行的工业级架构

Python算法交易系统实战:从行情接入到实盘执行的工业级架构

1. 这不是“学Python”,而是用Python解决真实交易场景里的硬问题如果你在搜索“Python for finance tutorial”时,看到的教程还在教你怎么用print("Hello World")、怎么写for循环,那它根本没资格叫“金融级Python”。真正的金融场景…

2026/7/7 21:23:32 阅读更多 →
BilibiliDown:一键下载B站视频,打造你的个人离线视频库

BilibiliDown:一键下载B站视频,打造你的个人离线视频库

BilibiliDown:一键下载B站视频,打造你的个人离线视频库 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/…

2026/7/7 21:17:28 阅读更多 →
【Java课程设计/毕业设计】基于前后端分离的餐饮营收统计系统的设计与实现 基于 SpringBoot 的智慧餐饮点餐服务系统的设计与实现【附源码、数据库、万字文档】

【Java课程设计/毕业设计】基于前后端分离的餐饮营收统计系统的设计与实现 基于 SpringBoot 的智慧餐饮点餐服务系统的设计与实现【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/7 21:15:27 阅读更多 →
Python魔法方法:解释器级对象行为契约详解

Python魔法方法:解释器级对象行为契约详解

1. 这不是语法糖,是Python的底层操作系统接口 “Introducing Python Magic Methods”——光看标题,很多人会下意识划走:又是那种讲 __init__ 和 __str__ 的入门教程?但如果你真这么想,就错过了Python最硬核、最常被…

2026/7/7 21:13:27 阅读更多 →
AWS Amplify Gen 2 实战指南:代码即架构的全栈开发范式

AWS Amplify Gen 2 实战指南:代码即架构的全栈开发范式

1. 为什么我三年内用 Amplify 重构了 7 个生产项目——一个全栈开发者的真实视角你有没有过这种体验:凌晨两点,对着一个刚上线的 React 管理后台抓狂。前端页面跑得飞快,但用户一点击“导出报表”,整个 UI 就卡死三秒——因为后端…

2026/7/7 21:13:27 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻