我是Sybase IQ的新手,当我尝试执行此代码时,会显示错误
无法执行该语句。第1行SELECT附近的语法错误
DECLARE @SQL VARCHAR(500)
SET @SQL='SELECT * FROM SNP_CHECK_TAB A INNER JOIN SELECT * FROM E$_auditemp_trg B ON B.ODI_ORIGIN = A.ORIGIN WHERE B.ODI_SESS_NO =532001 ORDER BY B.ODI_CHECK_DATE DESC'
EXECUTE(@SQL)
请帮我解决这个问题。
提前致谢
答案 0 :(得分:0)
parenthesis
的第二次查询错过了Inner Join
。
你必须像
一样使用... INNER JOIN (SELECT * FROM E$_auditemp_trg ) B ...
-- ^ you need to enclose here
Instaed of
INNER JOIN (SELECT * FROM E$_auditemp_trg B ON B.ODI_ORIGIN = A.ORIGIN WHERE
B.ODI_SESS_NO =532001 ORDER BY B.ODI_CHECK_DATE DESC)
-- ^ (not here)
试试这个
DECLARE @SQL VARCHAR(500)
SET @SQL='SELECT * FROM SNP_CHECK_TAB A INNER JOIN (SELECT * FROM E$_auditemp_trg) B ON B.ODI_ORIGIN = A.ORIGIN WHERE B.ODI_SESS_NO =532001 ORDER BY B.ODI_CHECK_DATE DESC'
EXECUTE(@SQL)