KingbaseES 时间函数有两大类:返回事务开始时间和返回语句执行时的时间。具体函数看以下例子:

1、返回事务开始时的时间

以下函数返回事务开始的时间(通过 begin .. end 两次调用结果相同):now, current_time , transaction_timestamp 返回的都是事务开始的时间。

test=# select now(),sys_sleep(1),now();
NOW | SYS_SLEEP | NOW
-------------------------------+-----------+-------------------------------
2022-03-02 13:57:41.702597+08 | | 2022-03-02 13:57:41.702597+08
(1 row) test=# select current_time ,sys_sleep(1),current_time;
CURRENT_TIME | SYS_SLEEP | CURRENT_TIME
--------------------+-----------+--------------------
14:01:26.031228+08 | | 14:01:26.031228+08
(1 row) test=# select transaction_timestamp(),sys_sleep(1),transaction_timestamp();
TRANSACTION_TIMESTAMP | SYS_SLEEP | TRANSACTION_TIMESTAMP
-------------------------------+-----------+-------------------------------
2022-03-02 14:01:31.756111+08 | | 2022-03-02 14:01:31.756111+08
(1 row)

2、返回函数执行时的时间

clock_timestamp ,timeofday 返回的是函数 执行时刻的时间

test=# select clock_timestamp(),sys_sleep(1),clock_timestamp();
CLOCK_TIMESTAMP | SYS_SLEEP | CLOCK_TIMESTAMP
-------------------------------+-----------+-------------------------------
2022-03-02 14:05:44.657881+08 | | 2022-03-02 14:05:45.659408+08
(1 row) test=# select timeofday(),sys_sleep(1),timeofday();
TIMEOFDAY | SYS_SLEEP | TIMEOFDAY
-------------------------------------+-----------+-------------------------------------
Wed Mar 02 14:05:52.292714 2022 CST | | Wed Mar 02 14:05:53.293870 2022 CST
(1 row)

3、返回语句的执行时间

statement_timestamp  比较特殊:

test=# select statement_timestamp(),sys_sleep(1),statement_timestamp();
statement_timestamp | sys_sleep | statement_timestamp
-------------------------------+-----------+-------------------------------
2021-09-13 17:00:23.635612+08 | | 2021-09-13 17:00:23.635612+08
(1 row) test=# begin;
BEGIN
test=# select statement_timestamp();
statement_timestamp
-------------------------------
2021-09-13 17:04:14.442012+08
(1 row) test=# select statement_timestamp();
statement_timestamp
-------------------------------
2021-09-13 17:04:20.638240+08
(1 row) test=# commit;

4、来看几个函数的稳定性

        PRONAME        | PROVOLATILE
-----------------------+-------------
clock_timestamp | v
now | s
statement_timestamp | s
timeofday | v
transaction_timestamp | s
(5 rows)

从函数稳定性也可以看出 clock_timestamp , timeofday 是volatile , 同一条语句多次调用必须多次执行。

PostgreSQL 时间函数分类与特性的更多相关文章

  1. PostgreSQL 时间函数 extract函数

    计算时间差天数 select extract(day FROM (age('2017-12-10'::date , '2017-12-01'::date)));   计算时间差秒数 select ex ...

  2. postgreSQL时间、日期函数

    一.获取系统时间函数 1.1.获取当前完整时间 select now(); select current_timestamp; 1.2.获取当前日期 select currnt_date: 1.3.获 ...

  3. PostgreSQL的时间函数使用整理

    PG的时间函数使用整理如下 1.获取系统时间函数 select now(); --2012-05-12 18:51:59.562+08 select current_timestamp; --2012 ...

  4. MySQL数据库学习笔记(五)----MySQL字符串函数、日期时间函数

    一.常见字符串函数: 1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位置 5.LEFT/RIGHT  取左 ...

  5. php时间函数time(),date(),mktime()区别

    php时间函数time(),date(),mktime()区别   浏览:1161 发布日期:2014/12/18 分类:系统代码 关键字: php时间函数 time() date()mktime() ...

  6. mysql日期时间函数2

    win7可以设定每周从哪一天开始,win2003等不能方便的修改.有的是周日开始,有的是周一开始.而工作中有的时候每周是从周六开始算的,有些数据需要按周统计,那么那种方式比较好呢?   通过下面的研究 ...

  7. MySQL字符串函数、日期时间函数

    MySQL字符串函数.日期时间函数 一.常见字符串函数: 1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位 ...

  8. mysql学习笔记--- 字符串函数、日期时间函数

    一.常见字符串函数: 1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位置 5.LEFT/RIGHT  取左 ...

  9. PostgreSQL时间格式及相关函数实践

    在创建表的时候,有客户需要将时间转为字符串,而且要求了具体的格式,如:20181115101010001.方便记录数据的更新时间,貌似是给Mysql使用,当时就很蛋疼,时间格式存储子啊数据库中就是va ...

随机推荐

  1. dubbox、zookeeper BUG记录

    主要错误信息: dubbo:com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method... Caused by: com.alib ...

  2. 基于swiftadmin极速后台开发框架,我制作了菜鸟教程[专业版]

    由于互联网上基础编程教学的文档和视频教程已经有很多了,为什么还要建立菜鸟教程网, 这是因为基于我个人在十余年的自学编程的道路上.,我能深刻的体会到一名新手 在入门编程的时候,门槛在哪里,痛点在哪里?很 ...

  3. 隐私计算FATE-多分类神经网络算法测试

    一.说明 本文分享基于 Fate 使用 横向联邦 神经网络算法 对 多分类 的数据进行 模型训练,并使用该模型对数据进行 多分类预测. 二分类算法:是指待预测的 label 标签的取值只有两种:直白来 ...

  4. Tapdata Cloud 2.1.5来啦:新增支持Amazon RDS数据库,错误日志查询更便捷,Agent部署细节再优化

      需求持续更新,优化一刻不停--Tapdata Cloud 2.1.5 来啦!   最新发布的版本中,数据连接再上新,同时新增任务报错相关信息快速查询入口,开始支持 JVM 参数自定义设置.   更 ...

  5. skip-host-cache skip-name-resolve

    在mysql 的data 文件夹下 生成了一个.err的文件,打开发展,经常有人访问这个,服务器部署在腾讯云上. 2017-05-23 0:49:04 2996 [Warning] IP addres ...

  6. Go语言基础六:结构体和方法

    结构体 结构体是一个由用户定义的复合类型,它由一系列属性组成,每个属性都有自己的类型和值.Go语言中数组可以存储同一类型的数据,但在结构体中用户可以为不同项定义不同(或相同)的数据类型.结构体是值类型 ...

  7. list集合的介绍和常用方法

    List接口介绍 java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象成为List集合.在List集合中允许出现重复的元素,所 ...

  8. python 面向对象理解

    简介 与java语言一样,python也属于面向对象编程,除此之外,还有面向过程编程.函数式编程. 面向过程编程:依据业务逻辑自上而下一步一步编写, 可能会存在冗余现象 函数式编程:需要编程语言可以将 ...

  9. php去除bom头

    //去掉bom头 $result = trim($result, "\xEF\xBB\xBF"); print_r(json_decode($result, true));

  10. Nmap 操作手册 - 完整版

    目录 Nmap - 基础篇 Nmap 安装 RedHat Windows Debina & Ubuntu Others Linux Nmap 参数(简单版) 目标说明 主机发现 扫描技术 端口 ...