【发布时间】:2016-10-22 06:14:33
【问题描述】:
Oracle XE 11. 一个非常简单的连接查询给了我以下错误:
ORA-00932: inconsistent datatypes: expected - got CLOB
表格:
Product
----------------------------------
id, name, description, categoryId
Catetory
------------------
id, name
产品描述为 CLOB。
SQL> 描述产品;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(19)
NAME NOT NULL VARCHAR2(30 CHAR)
CATEGORYID NUMBER(19)
DESCRIPTION CLOB
SQL> desc 类别;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(19)
NAME NOT NULL VARCHAR2(30 CHAR)
查询:
SELECT DISTINCT t1.ID, t1.DESCRIPTION, t1.NAME, t0.name FROM Product t1
LEFT OUTER JOIN Category t0 ON (t0.ID = t1.categoryId);
第 1 行的错误: ORA-00932: 不一致的数据类型: 预期 - 得到 CLOB
如果我从选择中删除 t0.name,它将起作用。很奇怪。
SELECT DISTINCT t1.ID, t1.DESCRIPTION, t1.NAME FROM Product t1
LEFT OUTER JOIN Category t0 ON (t0.ID = t1.categoryId);
谢谢。
【问题讨论】: