oracle查询

今天用oracle左连接做一个查询,结果条件总是不起作用。

原来是这样写的 SELECT A.*,RA.* FROM PUB_AUTHORITY A LEFT JOIN PUB_ROLEAUTHORITY RA ON  RA.AUTHNUMBER=A.AUTHNUMBER where RA.rolenumber='CS9901'

浪费好久时间才发现。只要把where 改变为and,才会起作用。有点小疑问

下面 收藏点东西

oracle 空字符串 null 和各种判断当前字段是否为空 
情况一:

select (case when trim('      ') is not null then 'not null' else 'is null' end) as age from dual;

输出结果:age: 'is null'


情况二:删除trim()

select (case when '      ' is not null then 'is null' else 'not null' end) as age from dual;

输出结果:age: 'not  null'

由以上测试可以得出今后的判断条件为:


if (trim(nvl(var_name_str,''))='')  then

         begin

           your operation;

         end;

 end if;

nvl用法:nvl(arg,value)代表如果前面的arg的值为null那么返回的值为后面的value

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值