在Oracle SQL中,为什么这段代码不能编译? Oracle不支持交叉? intersect只需要一个列值吗?
假设两个表具有相同的列类型。
由于
select B.name, B.id from tmp_B B where B.id in (select distinct id from tmp_A);
intersect
select distinct A.name, A.id from tmp_A A;
错误消息
Error report:
Unknown Command
答案 0 :(得分:0)
您的语句中存在语法错误。在初始SELECT
之后和INTERSECT
之前,您有一个额外的分号。
select B.name, B.id from tmp_B B where B.id in (select distinct id from tmp_A)
intersect
select distinct A.name, A.id from tmp_A A
假设ID
和NAME
在两个表中具有相同的数据类型,应该是一个有效的SQL语句。