最近工作需要,需要实现以下效果:
我的表是这样的:
查询一个 blob需要实现以下效果:
现在有一个数据表table1,里面有一个字段的类型是blob类型,字段名为f1
需要查询这个表里面f1为空的时候 新建一个列名叫isnew,如果f1为空的时候isnew字段为1
所以sql要实现新建列和判断blob
在网上找了很多方法都不能判断blob是否为空
用过很多方法,比如:
utl_raw.cast_to_varchar2(dbms_lob.substr(Script,2000,1))
类似于这个的方法,会报错
也不知道是不是我的使用问题,所以放弃了这个方法
把另外的正常字符串的字段和这个blob拼在一起然后用length函数判断
因此在结合很多方法和测试之后,总结的方法:
select ID, Script, CASE WHEN Script is null THEN 1 ELSE 0 END AS IsNew from k_component
查询结果:
完美解决,把这个blob有值和没值分的清清楚楚