with和without time zone两者有什么区别

1.区别

1)名字上看一个是带时区的,另一个是不带时区的,查出来的时间是一样的,只是一个带时区标志,一个不带而已,时区的基准是格林威治时间UTC。
2)这对于数据的显示上来说,区别就是时间数据的末尾带不带时区标志,即+/-时区,比如中国(prc),时区是东八区,带时区标志的话就是+08。

数据库内部还是都存储的是UTC格式时间,根据当前的时区进行转换显示。

2.查看配置文件中时区的配置:

[postgres@localhost ~]$ more /database/pgdata/postgresql.conf |grep timezone
log_timezone = 'US/Pacific'
timezone = 'US/Pacific'
#timezone_abbreviations = 'Default' # Select the set of available time zone
# share/timezonesets/.

3.客户端时区的更改说明

在服务端有一些时区的配置信息,安装的时候就给装上了,客户端时区的更改并不能随意设置。
这些配置信息是放在$PGHOME/share/timezone里面。

4.实验:

美国西7区与中国东八区相差15个小时,格林威治时间UTC和东八区相差8个小时

test=# set timezone="US/Pacific";
SET
test=# show timezone;
TimeZone
------------
US/Pacific
(1 row)test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-20 11:41:47.578319-07 | 2019-08-20 11:41:47.578319
(1 row)test=# set timezone=prc;
SET
test=# show timezone;
TimeZone
----------
PRC
(1 row)test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-21 02:42:01.898303+08 | 2019-08-21 02:42:01.898303
(1 row)test=# set timezone=UTC;
SET
test=# show timezone;
TimeZone
----------
UTC
(1 row)test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-20 18:42:09.018571+00 | 2019-08-20 18:42:09.018571
(1 row)

北京、上海都是PRC东八区,时间是一样的

test=# set timezone="Asia/Shanghai";
SET
test=# show timezone;
TimeZone
---------------
Asia/Shanghai
(1 row)test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-21 02:51:26.704907+08 | 2019-08-21 02:51:26.704907
(1 row)test=# set timezone="Asia/Beijing";
SET
test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-21 02:51:41.534930+08 | 2019-08-21 02:51:41.534930
(1 row)test=# set timezone=PRC;
SET
test=# select now()::timestamp with time zone, now()::timestamp without time zone;
now | now
-------------------------------+----------------------------
2019-08-21 02:51:54.704583+08 | 2019-08-21 02:51:54.704583
(1 row)

转载于:https://www.cnblogs.com/kuang17/p/11384926.html

PostgreSQL中with和without time zone两者有什么区别相关推荐

  1. 插入,在PostgreSQL中重复更新吗?

    本文翻译自:Insert, on duplicate update in PostgreSQL? Several months ago I learned from an answer on Stac ...

  2. Postgresql杂谈 04—Postgresql中的五种常规索引

    一.索引的分类 Postgresql中索引一共分为5种,每一种都有它合适的应用场景,我们在使用时要根据不同业务的特点,选择合适的索引,这样才能加快sql语句的查询效率.下面,我们将就每种不同的索引,介 ...

  3. Postgresql中,计算两个日期月份差值或年月日,实现Oracle中months_between、add_months的效果

    Oracle中存在months_between.add_months函数,用作计算年龄等,例如计算某个人的年龄:岁(age)-月(monthss)-天(days) SELECT rowid,a.fid ...

  4. PostgreSQL中的分区表(创建分区)–第1部分

    PostgreSQL中的分区表很容易做到,它涉及PostgreSQL的继承概念和触发器. 在这里,我提供了一个示例来演示如何在PostgreSQL中对表进行分区. 在继续之前,请了解一些基本概念,例如 ...

  5. Postgresql杂谈 23——Postgresql中的全文检索

    今天我们来聊一下全文检索,想必做搜索相关业务朋友对这个概念不会陌生,尤其是做搜索引擎,或者类似CSDN.知乎类的社区网站,全文检索是逃不开的业务.文,即文章.文档.全文搜索就是给定关键词,在所有的文档 ...

  6. Postgresql杂谈 09—Postgresql中的Gist索引的深入学习

    本文,我们进一步学习下Gist索引.Gist是Generalized Search Tree的意思,意思是通用搜索树,底层结构也是一种平衡树,它是一套索引模板,可以支持用户实现自定义的索引.相比于BT ...

  7. postgresql中COPY的用法

    一.测试创建表: [postgres@cacti ~]$ cat test.sql CREATE TABLE weather ( city varchar(80), temp_lo int, temp ...

  8. PostgreSQL中的数据库实例、模式、用户(角色)、表空间

    2019独角兽企业重金招聘Python工程师标准>>> 本文参考:http://blog.csdn.net/kanon_lgt/article/details/5931522 htt ...

  9. PostgreSQL 中的引号与大小写

    单双引号 单引号用来标识实际的值,双引号用来标识表名(table name)或列名(column name)等数据库中存在的值. select "name" from " ...

  10. 在 PostgreSQL 中使用码农很忙 IP 地址数据库

    在下载到码农很忙 IP 地址数据库后,我们可以将其存储在 PostgreSQL 数据库中,并在需要查询某个 IP 对应的位置数据时,通过 SQL 语句获取正确的结果.这是一种很便捷的使用方式,并且在增 ...

最新文章

  1. php api 无符号整数基数为16的整数参数的字符串表示形式,php基础语法
  2. ZOJ 2165 Red and Black
  3. 单一登录云:SAML和OpenId
  4. IBM将发布以固态硬盘为基础的全企业系统
  5. open函数返回-1_记录学习python的第3天-递归函数/文件操作
  6. vba mysql 非法字符串_非法字符串处理.sql
  7. ERP项目实施记录02
  8. [转]Chrome 错误代码:ERR_UNSAFE_PORT
  9. 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第1节 基本概念_01maven概述
  10. SiteSucker Pro 4.0.1 扒站神器
  11. Windows10三月更新后,电脑打印文件时蓝屏解决方案
  12. 直流电机控制原理与TB6612FNG(初识编码器)
  13. 公众号淘客返利系统,自动回复淘宝优惠券实现方法
  14. 普加甘特图数据结构解析
  15. 7月4-5日TokenSky东京站100+明星嘉宾齐聚东京!
  16. VSCode之容器开发环境搭建 (Remote-Containers)
  17. c语言要使用数学函数,c语言中用到的 数学函数(转)
  18. html为什么链接无效,如何揪出网页中的无效链接
  19. ubuntu使用 ffmpeg 转换amr格式为mp3
  20. 【读一本书】《昇腾AI处理器架构与编程》--神经网络基本知识学习(1)

热门文章

  1. Android小白快速编写APP登录界面
  2. 绘图板应用讲解计算机,如何用数位板在电脑上画画?5个板绘使用技巧分享!...
  3. orcad 16.6 关闭startpage
  4. 技术人物:张亚勤-“智造中国”规划师(一)
  5. Jquery 插件开发——citylinkage(省、市、县城市联动选择)
  6. RAC知识更新之-RAC单节点启动(摘自文平书)
  7. 搜狗浏览器 中文显示乱码
  8. php中怎么获取提交时间,php – 通过curl_getinfo()获取详细信息来获取cURL请求的时间...
  9. 编译原理实验课程设计
  10. 【老生谈算法】matlabBOOST电路的设计与仿真——BOOST电路