【发布时间】:2011-04-20 10:34:45
【问题描述】:
我有一个包含三个 NCLOB 列的表。对于每个 NCLOB,我想计算有多少不是“TC”或“NC”。 case when ... end 方法适用于 NVARCHAR2 列,但不适用于 NCLOB。如何测试投影列表中 NCLOB 的值?
Oracle 数据库 11g 版本 11.1.0.6.0
这个最小的例子演示了根本问题。
create table t (
alien_body_part nclob
);
insert into t(alien_body_part) values(null);
insert into t(alien_body_part) values('TC');
insert into t(alien_body_part) values('NC');
insert into t(alien_body_part) values('Extended Mandible');
select case when alien_body_part in ('TC', 'NC') then 0 else 1 end from t
*
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected - got NCLOB
【问题讨论】:
-
+1 表示有趣的列名。
标签: sql oracle oracle11g ora-00932