在postgresql数据库中判断是否是数字和日期时间格式函数操作

 更新时间:2020年12月28日 16:10:01   作者:BingCorePower  
这篇文章主要介绍了在postgresql数据库中判断是否是数字和日期时间格式函数的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在编写GreenPlum函数的过程中,遇到要判断字符串是否是数字和日期格式的情况,基于GreenPlum和postgresql的亲缘关系,找到了下面两个函数。

--1.判断字符串是否是数字

CREATE OR REPLACE FUNCTION isnumeric(txtStr VARCHAR) RETURNS BOOLEAN
AS
$$
BEGIN
 
RETURN txtStr ~ '^([0-9]+[.]?[0-9]*|[.][0-9]+)$';
 
END;
$$
LANGUAGE 'plpgsql';

--2.判断传入的字符串是否是日期格式

CREATE OR REPLACE FUNCTION isDate(dateStr VARCHAR) RETURNS BOOLEAN
AS
$$
BEGIN
 
IF (dateStr IS NULL) THEN 
   RETURN FALSE; 
END IF; 
   PERFORM dateStr::timestamp; 
   RETURN TRUE; 
EXCEPTION 
   WHEN others THEN 
   RETURN FALSE; 
 
END;
$$
LANGUAGE 'plpgsql';

补充:Postgresql中时间戳与日期的相互转换(同样适用于GreenPlum)

我就废话不多说了,大家还是直接看代码吧~

--日期转时间戳
SELECT EXTRACT(epoch FROM NOW()); 
SELECT EXTRACT(epoch FROM CAST('2017-12-06 00:17:10' AS TIMESTAMP)); 
 
--时间戳转日期
SELECT TO_TIMESTAMP(1512490630)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • PGSQL查询最近N天的数据及SQL语句实现替换字段内容

    PGSQL查询最近N天的数据及SQL语句实现替换字段内容

    PostgreSQL提供了WITH语句,允许你构造用于查询的辅助语句,下面这篇文章主要给大家介绍了关于PGSQL查询最近N天的数据及SQL语句实现替换字段内容的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • PostgreSQL管理工具phpPgAdmin入门指南

    PostgreSQL管理工具phpPgAdmin入门指南

    phpPgAdmin是用PHP开发的一个基于web的PostgreSQL数据库管理工具。和MySql时代的PHPMyAdmin类似。本文介绍了phpPgAdmin安装和使用方法,需要的朋友可以参考下
    2014-03-03
  • postgreSQL中的case用法说明

    postgreSQL中的case用法说明

    这篇文章主要介绍了postgreSQL中的case用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL树形结构的递归查询示例

    PostgreSQL树形结构的递归查询示例

    这篇文章主要给大家介绍了关于PostgreSQL树形结构的递归查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用PostgreSQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • Postgresql 赋予用户权限和撤销权限的实例

    Postgresql 赋予用户权限和撤销权限的实例

    这篇文章主要介绍了Postgresql 赋予用户权限和撤销权限的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL 中的postgres_fdw扩展详解

    PostgreSQL 中的postgres_fdw扩展详解

    这篇文章主要介绍了PostgreSQL 中的postgres_fdw扩展详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • postgresql 实现将数组变为行

    postgresql 实现将数组变为行

    这篇文章主要介绍了postgresql 实现将数组变为行的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • navicat无法连接postgreSQL-11的解决方案

    navicat无法连接postgreSQL-11的解决方案

    这篇文章主要介绍了navicat无法连接postgreSQL-11的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Postgresql删除数据库表中重复数据的几种方法详解

    Postgresql删除数据库表中重复数据的几种方法详解

    本文详细讲解了Postgresql删除数据库表中重复数据的几种方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • PostgreSQL之分区表(partitioning)

    PostgreSQL之分区表(partitioning)

    通过合理的设计,可以将选择一定的规则,将大表切分多个不重不漏的子表,这就是传说中的partitioning。比如,我们可以按时间切分,每天一张子表,比如我们可以按照某其他字段分割,总之了就是化整为零,提高查询的效能
    2016-11-11

最新评论