写了一段sql,但一直报缺失 右括号.请朋友们帮我看看,谢谢了
sql="select q.* from (select rowNum n,t.* from (" +
"select * from book_lend c where " +
" c.bookName like'%"+query+"%' " +
" or c.author like'%"+query+"%' " +
"or c.press like'%"+query+"%' or to_char(c.appearYear,'yyyy-mm-dd') like '%"+query+"%' ) t " 
+currentYear+"' order by auto_id ) q "
        +"where q.n>" + Snt + " and q.n<=" + Cnt;

解决方案 »

  1.   

    需求再明确一下撒,是哪里报错?执行sql时报错,还是编辑器提示报错,我表示没看懂
      

  2.   

    看看是不是这里多了引号:"' order by auto_id
      

  3.   

    String sql = "select q.* from (select rowNum n,t.* from ("
    + "select * from book_lend c where "
    + " c.bookName like '%"+ query + "%'" 
    + " or c.author like '%" + query + "%'"
    + " or c.press like '%" + query+ "%'"
    + " or to_char(c.appearYear,'yyyy-mm-dd') like '%" + query+ "%' ) t " + currentYear + "' order by auto_id ) q"
    + " where q.n>" + Snt + " and q.n<=" + Cnt;
      

  4.   


    select q.* from (select rowNum n,t.* from ( select * from book_lend c where 
    c.bookName like '% query %'   or c.author like'% query %' or c.press like
    '%query%' or to_char(c.appearYear,'yyyy-mm-dd') like '%query%' ) t 
    currentYear' order by auto_id ) q where q.n> Snt  and q.n<= Cnt;你替换一下少了什么?明显少了括号
      

  5.   

    这种问题 楼主一句sysout就可以解决了。。
      

  6.   

    再有此类问题,拿到运行时的sql语句,运行一下就知道原因咯