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. RPA应用场景-产品主数据同步

    场景概述 产品主数据同步 所涉系统名称 产品管理系统.SAP系统 人工操作(时间/次) 35分钟 所涉人工数量 3 操作频率 不定时 场景流程1.登录收购品牌产品管理系统 2.根据时间.产品分类等选择 ...

  2. jenkins安装配置及发布

    1. yum install -y lrzsz vim net-tools 2. 下载jdk-8u131-linux-x64.tar.gz http://www.oracle.com/technetw ...

  3. CesiumJS 2022^ 源码解读[7] - 3DTiles 的请求、加载处理流程解析

    目录 1. 3DTiles 数据集的类型 2. 创建瓦片树 2.1. 请求入口文件 2.2. 创建树结构 2.3. 瓦片缓存机制带来的能力 3. 瓦片树的遍历更新 3.1. 三个大步骤 3.2. 遍历 ...

  4. Docker容器搭建android编译环境

    Docker容器搭建android编译环境 目录 1 部署容器 1.1 手动部署 1.1.1 配置docker 1.1.2 启动容器 1.1.3 配置环境 1.2 Dockerfile 2 镜像管理 ...

  5. 注意力机制最新综述:A Comprehensive Overview of the Developments in Attention Mechanism

    (零)注意力模型(Attention Model) 1)本质:[选择重要的部分],注意力权重的大小体现选择概率值,以非均匀的方式重点关注感兴趣的部分. 2)注意力机制已成为人工智能的一个重要概念,其在 ...

  6. resultMap自定义映射(一对多)

    collection:处理一对多和多对多的关系 1) POJO中的属性可能会是一个集合对象,我们可以使用联合查询,并以级联属性的方式封装对象.使用collection标签定义对象的封装规则 publi ...

  7. [开源精品] .NET Redis Client 又多了一个选择,还在被 StackExchange.Redis Timeout 问题困扰吗?

    前言 .NET 下 RedisClient SDK 选择挺多,国人常用免费的有 StackExchange.Redis/CSRedis/Newlife.Redis,收费的有 ServiceStack. ...

  8. mongodb 数据块迁移的源码分析

    1. 简介 上一篇我们聊到了mongodb数据块的基本概念,和数据块迁移的主要流程,这篇文章我们聊聊源码实现部分. 2. 迁移序列图 数据块迁移的请求是从配置服务器(config server)发给( ...

  9. Ubuntu修改网卡名

    vim /etc/udev/rules.d/70-persistent-net.rules 添加以下内容: SUBSYSTEM=="net", ACTION=="add& ...

  10. flashplayer下载

    现在网上不好找,折磨了我好久.这有一个方法,或许能帮到你. 下载地址:https://gitee.com/urain39/adobe-flash_player_sa 官网已经停止更新维护了,连Debu ...