oracle中小问题 sal number(10);select length(name) into sal from table1 where id =1;当name ='' or name is null 的时候 sal 中是null 还是0 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --这种问题一试便知scott@YPCOST> select length(comm),comm from emp;LENGTH(COMM) COMM------------ ---------- 3 900 3 300 3 500 3 900 4 1400 3 900 1 0 3 900 3 900 with tab as(select null id from dual)select length(id) len from tab-----------------------------------len----null with tab as(select '' id from dual)select length(id) len from tab-----------------------------------len----null(空白用null来表示了) 由于NULL是一个未知的值,所以得到的长度也是未知的即结果同样为NULL with tab as (select 'abc' as c1,'' as c2,null as c3 from dual)select Length(c1),length(c2),length(c3) from tab结果无论是‘’还是null length都为空 ORACLE 中 NULL 的意思是“未知”所以对于字段的操作,应该事先对该字段进行 NULL 判断IS NULL 只有在得到非 NULL 的结果时,再对其作其他操作所以应该从根本上避免对可能 NULL 的字段去判断长度 java web连接oracle dataguard的时候应用层是通过什么做到读写分离的 大家好,问一个proc的问题 ●█〓oracle里写个存储过程报“创建的过程带有编译错误”〓█● oracle中ODBC导入的问题 学Oracle 需要下载哪些软件? pl/sql ---------------月份跨年度查询数据------------【100分求助】 如何在Oracle中取得,用java写的存储过程返回的数组 ORACLE ERP问题收集 SQL 语句悬赏 将两张表多个字段insert到同一张表去 我有一大段代码,是我取得存贮过程中的一段,我想定义一个变量,执行这段代码
--这种问题一试便知
scott@YPCOST> select length(comm),comm from emp;LENGTH(COMM) COMM
------------ ----------
3 900
3 300
3 500
3 900
4 1400
3 900 1 0
3 900 3 900
with tab as
(
select null id from dual
)
select length(id) len from tab
-----------------------------------
len
----
null
(
select '' id from dual
)
select length(id) len from tab
-----------------------------------
len
----
null(空白用null来表示了)
即结果同样为NULL
select Length(c1),length(c2),length(c3) from tab
结果无论是‘’还是null length都为空
所以对于字段的操作,应该事先对该字段进行 NULL 判断
IS NULL
只有在得到非 NULL 的结果时,再对其作其他操作
所以应该从根本上避免对可能 NULL 的字段去判断长度