Postgres 仿oracle的nvl函数

Postgres 仿oracle的nvl函数

------jview@

调用方式select nvl(null,'aaa'),nvl(null,now())

以下代码只提供以上几个函数,如果需要更多类型,可按此方法增加其他数据类型的nvl函数

自定义函数

CREATE OR REPLACE FUNCTION nvl(character varying, character varying)

RETURNS character varying AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(boolean, boolean)

RETURNS boolean AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(interval, interval)

RETURNS interval AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(time without time zone, time without time zone)

RETURNS time without time zone AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(date, date)

RETURNS date AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(numeric, numeric)

RETURNS numeric AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(timestamp without time zone, timestamp without time zone)

RETURNS timestamp without time zone AS

$BODY$

declare

begin

if $1 is not null then

return $1;

else

return $2;

end if;

end;

$BODY$

LANGUAGE 'plpgsql' VOLATILE

COST 100;

CREATE OR REPLACE FUNCTION nvl(timestamp with time

oracle nvl函数代码,Postgres 仿oracle的nvl函数.doc相关推荐

  1. oracle中orand使用,Postgres兼容Oracle研究——orafce调研

    一.背景 PostgreSQL是和Oracle最接近的企业数据库,包括数据类型,功能,架构和语法等几个方面.甚至大多数的日常应用的性能也不会输给Oracle. 但是Oracle有些函数或者包,默认Po ...

  2. Oracle采用的数据模型,POSTGRES、ORACLE等数据库采用的数据模型面向对象的数据模型()...

    POSTGRES.ORACLE等数据库采用的数据模型面向对象的数据模型() 答:× 定义如下变量和数组: int i,x[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句for (i= ...

  3. python函数代码块以什么开头_Python 函数

    函数能提高应用的模块性,和代码的重复利用率. 定义一个函数: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数. ...

  4. (非完成版)C++实现科学计算器主函数代码,(不含调用函数)

    C++作业,为方便复制所以写了CSDN,匹配度仅供作业小组人员使用 #include<iostream> using namespace std;int key1() {int k1;co ...

  5. python第一条入门程序_Python语言函数代码的执行流程

    https://www.xin3721.com/eschool/pythonxin3721/ Python语言函数代码的执行流程,为了保证函数的定义先于其首次调用时执行,我们需要知道中语句的执行顺序. ...

  6. 【优化版】(终稿)C++实现科学计算器主函数代码(含调用函数)

    代码仅供作业小组人员使用 以下链接为经小组成员完成改善得到的中间结果各版本 (终稿)C++实现科学计算器主函数代码(含调用函数)_m0_57453166的博客-CSDN博客 (初稿)C++实现科学计算 ...

  7. (终稿)C++实现科学计算器主函数代码(含调用函数)

    代码仅供作业小组人员使用 (非完成版)C++实现科学计算器主函数代码,(不含调用函数)_克蕾尔的博客-CSDN博客 (初稿)C++实现科学计算器主函数代码(含调用函数)_Honeyseaaa的博客-C ...

  8. Oracle编程入门经典 第11章 过程、函数和程序包

    目录 11.1          优势和利益... 1 11.2          过程... 1 11.2.1       语法... 2 11.2.2       建立或者替换... 2 11.2 ...

  9. oracle vm concat指定分隔符,重写Oracle的wm_concat函数,自定义分隔符、排序

    oracle中,wm_concat函数是一个聚合函数,和mysql中的group_concat函数类似,不过group_concat函数比较强大,可以定义分隔符和排序,当然所谓强大是相对的,这里假使我 ...

最新文章

  1. HttpURLConnection与HttpClient浅析---转
  2. 浅淡HTML5移动Web开发
  3. PHP函数,方法,接口
  4. 《迷人的8051单片机》---- 1.2小元器件有大智慧
  5. 小米功能机支持java吗_小米竟然卖功能机了!2.8吋/15天超长待机
  6. php byte stringbuffer,重拾java基础(十三):String姐妹StringBuffer、StringBuilder总结
  7. pptx版式验证代码
  8. system合约源码分析
  9. 一步一步写算法(之内存)
  10. 云起智慧中心连接华为_LifeSmart云起全系列产品接入华为HiLink生态系统
  11. 景观生态学概述[转载]
  12. 安装erlang没有bin文件夹_Windows10有关jdk13.0.1的详细安装过程
  13. Linux修改Mysql默认端口3306
  14. Golang 实现文件内容差异比较
  15. 微信小程序人脸识别获取照片,并解决相机拍照在ios上有声音问题
  16. 哈工大计算机保研面试专业课问题,[转载]哈工大保研面试
  17. 计算机课程之间的关系
  18. 单片机笔记(江科大自化协)
  19. Java 全栈知识体系
  20. 这几款超实用办公神器,让你的工作省心省时又省力!

热门文章

  1. 计算机视觉之三维重建-SFM系统
  2. IDERA ER/Studio Data Architect构建数据模型
  3. thinkphp curd 列表关联展现方式分享
  4. gotomeeting给您带来全新的生活
  5. 一、何为算法,什么是伪代码
  6. 【融博笔试题】查找单链表倒数第k个结点的值
  7. 本地组策略编辑器关闭windows10的自动更新
  8. 《苏宁安全架构演进及实践》阅读有感
  9. Treap(树堆)图解与实现
  10. 论文 MiNet: Mixed Interest Network for Cross-Domain Click-Through Rate Prediction