写了一个查询sql
SELECT h.n_jpkhid,h.v_khmc,h.v_khzw,h.v_khsr,h.v_dz,h.v_lxdh
FROM  t_jp_jpkhb e,t_jp_jpdjb h
WHERE e.n_zxbz=0 AND e.n_jpkhid=h.n_jpkhid AND h.n_zxbz=0 and (e.c_sjg=?  or ? is null) AND (e.c_dsjg=? or ? is null) AND (e.c_cljg=? or ? is null)  AND (e.n_jpgzid = ? or ? is null)     
ORDER BY h.v_khmc
一共有几万条数据,查询很慢,怎么能让查询速度快点?
新手,谢谢各位!

解决方案 »

  1.   

    e.n_jpgzid = ? or ? is null 这个语句有问题吧,
    应该是
    e.n_jpgzid = ? or e.n_jpgzid is null 吧,
      

  2.   

    忘了说了,这是润乾报表的数据集sql。由于有几万条数据,太慢了。想优化一下
      

  3.   

    挺简单的sql,速度很慢?是不是都没索引的?
      

  4.   

    就是建表的时候建了个主键唯一索引,就没别的了。关键是这个sql要查几万条数据,人家说等了5分钟没出来,后来weblogic都报连接错误了
      

  5.   

    这条SQL扔数据库里,多久出来?
      

  6.   

    根据查询条件采用用动态语句,不要e.c_cljg=? or ? is null