DB2编程序技巧(二)

1.6   类似charindex查找字符在字串中的位置
          Locate(‘y’,’dfdasfay’)
          查找’y’ 在’dfdasfay’中的位置。

1.7   类似datedif计算两个日期的相差天数
        days(date(‘2001-06-05’)) – days(date(‘2001-04-01’))
         days 返回的是从   0001-01-01 开始计算的天数


1.8   写UDF的例子
C写见sqllib\samples\cli\udfsrv.c

1.9     创建含identity值(即自动生成的ID)的表
           建这样的表的写法
           CREATE TABLE test
           (t1 SMALLINT NOT NULL
           GENERATED ALWAYS AS IDENTITY
           (START WITH 500, INCREMENT BY 1),
           t2 CHAR(1));
           在一个表中只允许有一个identity的column.

1.10     预防字段空值的处理
            SELECT DEPTNO ,DEPTNAME ,COALESCE(MGRNO ,'ABSENT'),ADMRDEPT
             FROM DEPARTMENT
              COALESCE函数返回()中表达式列表中第一个不为空的表达式,可以带多个表达式。
             和oracle的isnull类似,但isnull好象只能两个表达式。
     

1.11    取得处理的记录数
             declare v_count int;
            update tb_test set t1=’0’
            where t2=’2’;
            --检查修改的行数,判断指定的记录是否存在
            get diagnostics v_ count=ROW_COUNT;     
            只对update,insert,delete起作用. 不对select into 有效

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值