AS400 DB2 SQL常用函数总结

说明,本文所述,全部是针对使用SQL语句操作DB2,而不是在AS400的绿屏下使用AS400的命令操作Library、object、menber

一、AS400 DB2 SQL语法基础特别说明

1、AS400 DB2 SQL库、表、字段名都不区分大小写
2、AS400 DB2如果不在绿屏里面使用DDS创建表,而是直接使用SQL创建表,注意字段类型不支持一下类型
  • 不支持VARCHAR2, 但是支持VARCHAR
3、表没有取别名的情况下,则字段一定不能使用别名.字段

开发时,多表join查询,有时因为不同的表有相同的字段,这是需要对表名取别名,然后表别名.字段,以区分具体是哪个表的字段

SELECT ITNBR FROM AMFLIBF.ITMRVA;               --√:表不使用别名
SELECT ITNBR FROM AMFLIBF.ITMRVA ITMRVA;        --√:表使用别名,字段不加表别名
SELECT ITMRVA.ITNBR FROM AMFLIBF.ITMRVA ITMRVA; --√:表使用别名,字段也加表别名
SELECT ITMRVA.ITNBR FROM AMFLIBF.ITMRVA;        --×:表不使用别名,字段加表别名,(Oracle支持此写法,请注意对比)

二、常用SQL函数

1、AS400 DB2复制表SQL语句

AS400 DB2依据一个表,创建一个新的表,语法完全不同于其他数据库,如果需要复制表数据,必须分2个步骤,先定义复制表,然后再拷贝数据

  • 定义复制表 ,DEFINITION ONLY
CREATE TABLE 复制库.复制表名 AS (SELECT * FROM 参考库.参考表) DEFINITION ONLY;
  • 复制表数据,复制数据和其它数据库操作类似
INSERT INTO 复制库.复制表名 SELECT * FROM 参考库.参考表;

2、coalesce函数使用,类似于其他数据库的NVL函数

coalesce(字段,默认值):结果就是如果字段值不为NULL,则使用自己的值,否则使用默认值

SELECT COALESCE(MAX(ADFCNB), 100) FROM AMFLIBF.MBADREP WHERE ADCVNB = '    666'
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值