2016-03-02 2045 views
1

此声明有什么问题?Open-SQL语句中的语法错误

SELECT aufk~aufnr 
     zmm_limit_co~vd zmm_limit_co~matkl_code 
     zmm_limit_matkl~sign 
    FROM aufk 
    JOIN zmm_limit_co ON zmm_limit_co~auart = aufk~auart 
    left JOIN zmm_limit_matkl 
     on zmm_limit_matkl~matkl = zmm_limit_matkl~matkl_code  
    INTO CORRESPONDING FIELDS OF table lt_input 
    WHERE aufk~aufnr = <lf_new_pos>-aufnr. 

当我试图执行程序,ABAP给我一个错误:

'The elements in the "SELECT LIST" list must be separated using commas.'

我想,该错误以某种方式连接与连接,当我从消除“左”它 - 它编译得很好,但它。

+4

你有没有尝试用逗号分隔选择列表中的元素? –

+0

我会尝试用逗号分隔select中的项目,也可以尝试将OUTER添加到左连接。所以它读取LEFT OUTER JOIN,我不熟悉OPEN-SQL,但不是INTO语句应该在from之前? – WBratz

回答

6

您正在(可能是无意中)混合了OpenSQL SELECT语句的旧语句(现在已过时)和新语法,从而触发了这种不太有用的错误消息。查看release-specific change notes了解更改的一些细节。但是,在给出的示例中,我认为第二个连接条件是问题:您没有与其他两个表中的任何一个一起加入zmm_limit_matkl的内容,而是与其自身结合。这看起来不正确,可能会让编译器感到困惑。

+0

谢谢,这就是我错过的。现在修复它。 – AlexanderK