关于在 DB2 中选择期间的 SQLCODE -104(错误)



我一直在尝试将工作"插入"改编到 SELECT 语句中,并不断发现错误 -104

一)有人可以帮我理解为什么当我使用"插入"运行时"where"子句(如下)上的"."起作用的原因,但在"选择"子句上使用时给我一个错误? b)使用SELECT时,应该如何正确编写"插入"标准?

提前非常感谢有关此问题的任何帮助

插入:

INSERT INTO  SISPD2.SIS_DAILY_RECALC                            
(CIN_NUM,PGM_DIV_FG,NON_CA_FG,PGM_EXCPT_FG,WTW_FG)   
(SELECT C.CIN_NUM, C.PGM_DIV_FG, C.NON_CA_FG, C.PGM_EXCPT_FG,
C.WTW_FG                                             
FROM  SISPD2.SIS_INDV C                                  
WHERE C.CIN_NUM NOT IN (SELECT CIN_NUM FROM  SISPD2.SIS_DAILY_RECALC)                       

------------------------------------------------------------------------

选择:

SELECT C.CIN_NUM  ||','||                                          
C.PGM_DIV_FG ||','||                                        
C.NON_CA_FG  ||','||                                        
C.PGM_EXCPT_FG ||','||                                     
C.WTW_FG   ||','||                                        
WHERE (C.CIN_NUM NOT IN (SELECT A.CIN_NUM                        
FROM  SISPD2.SIS_DAILY_RECALC A));      

DSNT408I SQLCODE = -104,错误:非法符号"."。一些可能
合法的符号是:、从 INTO
DSNT418I SQLSTATE = 42601 SQLSTATE 返回代码

除非你正在构建一个要PREPAREEXECUTE的动态语句,否则你不应该将一个语句连接在一起。

SELECT C.CIN_NUM  
, C.PGM_DIV_FG
, C.NON_CA_FG
, C.PGM_EXCPT_FG
, C.WTW_FG
WHERE (C.CIN_NUM NOT IN (SELECT A.CIN_NUM
FROM  SISPD2.SIS_DAILY_RECALC A)); 

最新更新