0

我曾经在 oracle 中写过类似的查询,当时它有效。现在我试着把它放在 Derby JDBC 的 prepareStatement 中。

    SELECT THREADID,THREADID2,SIMILARITY FROM S WHERE     
    (THREADID,THREADID2) IN 
    (
       SELECT T1.ID,T2.ID FROM 
       (
         ( SELECT T.ID FROM T WHERE T.POSTTYPEID = '1' ORDER BY ANSWERCOUNT DESC FETCH FIRST 200 ROWS ONLY ) AS T1 
          JOIN 
         ( SELECT T.ID FROM T WHERE T.POSTTYPEID = '1' ORDER BY ANSWERCOUNT DESC FETCH FIRST 200 ROWS ONLY ) AS T2
       )
    )

原来我得到的错误如下:

java.sql.SQLSyntaxErrorException: 语法错误:在第 1 行第 78 列遇到“,”

我检查了代码,这个错误指向 (THREADID,THREADID2) 部分,是不是 JDBC Derby 不支持这个?

4

1 回答 1

0

     (THREADID,THREADID2) IN  

不工作

你必须分开喜欢

     WHERE THREADID IN ('your condition') OR THREADID2 IN ('your condition')
于 2013-03-05T06:32:08.590 回答