1

我正在尝试使用 SPUFI 在 z/OS 中比较 DB2 数据库中的两个表来提交 SQL 查询。

我这样做是通过使用来查看两个查询EXCEPT之间的差异。SELECT

我需要使用子句SELECT从第一个查询中过滤语句WHERE

SELECT KEY_FIELD_1,LOOKUP_FIELD_1  
FROM TABLE_1  
WHERE FILTER_FIELD = '1'  
EXCEPT  
SELECT KEY FIELD_2,LOOKUP_FIELD_2  
FROM TABLE_2

我得到了结果,但它也返回了一个错误-199这是因为WHERE第二条语句中不存在该子句SELECT吗?

ERROR: ILLEGAL USE OF KEYWORD EXCEPT.  
TOKEN <ERR_STMT> <WNG_STMT> GET SQL  
SAVEPOINT HOLD FREE ASSOCIATE WAS EXPECTED
4

1 回答 1

2

尝试引入括号,例如

( SELECT KEY_FIELD_1,LOOKUP_FIELD_1  
FROM TABLE_1  
WHERE FILTER_FIELD = '1' )  
EXCEPT  
( SELECT KEY FIELD_2,LOOKUP_FIELD_2  
FROM TABLE_2 )
于 2016-11-18T16:32:46.627 回答