MS与数据库表有关吧!
你先把你各种条件组合下的SQL语名拿到数据库中测试一下速度并进行一定优化先!
你先把你各种条件组合下的SQL语名拿到数据库中测试一下速度并进行一定优化先!
解决方案 »
- 这sql语句是个神马情况,是hibernate配置还是………………求指点
- 文件上传FTP,求助!!!(在线求助)
- 公司的boss面试或者不是技术人员面试,问什么问题呢?
- Spring +Struts+Hibernate 问题求助?那位高手给看一下
- 请教文件上传与下载的问题,多谢
- struts中数据原问题??
- Hibernate连接SQLserver出错,SEVERE: Error parsing XML: XML InputStream(2) The markup in the document preceding the root element
- struts多个页面的URL都是同一个action.do,用IE另存时都保存成最初的同一个页面?
- tomcat怎么配置?
- 谁知道Tomcat4.1的系统用户名和密码?
- 有人用过LdapTemplate吗
- wsad5.1连接Oracle9i数据源的问题,不知道是测试程序错误还是连接错误,敬请高手指教
</dynamic--> 中间这段当成注释了吧。这段不是注释,是查询条件,就象SQL语句中的where的作用,你如果把这都去了,那就表明没有where条件,直接查询数据库里所有数据,那速度当然快了。
2、left join 是连接别的表,将别的表的字段通过某种规则将所需字段临时添加到原边中。你如果不啊这个去了,那速度当然快了,你说你是直接从一个表里查数据快还是通过联合查询从多个表里查数据快啊。
建议回去好好看看itabis的文档,以后再提这样的问题会让人笑话的。再好好看看数据库查询的联结你自己就有答案了。
1、你说的注释是什么,这里面哪里有注释啊。你不会是把<!--dynamic prepend = "and">
</dynamic--> 中间这段当成注释了吧。这段不是注释,是查询条件,就象SQL语句中的where的作用,你如果把这都去了,那就表明没有where条件,直接查询数据库里所有数据,那速度当然快了。
2、left join 是连接别的表,将别的表的字段通过某种规则将所需字段临时添加到原边中。你如果不啊这个去了,那速度当然快了,你说你是直接从一个表里查数据快还是通过联合查询从多个表里查数据快啊。
建议回去好好看看itabis的文档,以后再提这样的问题会让人笑话的。再好好看看数据库查询的联结你自己就有答案了。
------------------------------------------
天翔:<!--dynamic prepend = "and">……</dynamic-->这个不是注释是什么?我也建议你回去好好xml的文档-有关注释的部分,免得让人笑话 谁都知道没查询条件比有查询条件快!但是我要说明的是我的代码中where传的值都没有,也就是说where后的都不执行,那为什么查询速度还非常慢呢?
-------------------------------------------
<isNotNull>先要判断值是否为null,若为null时才不追加这个条件。
每条数据都要经过11次这种判断。时间当然会多了。
2、把“ left join tFYGL tf on tc.bh=tf.bh ”(即sql中只保留一个left join)去掉的话查询速度也可以增加。
----------------------------------------------
没什么说的。去掉的话速度一定会增加。不过增加多少要看表的大小。
我找查询慢的问题出在哪了:
sql1如下:
SELECT * FROM tContribution tc left join tKW tk on tc.bh=tk.bh left join tFYGL tf on tc.bh=tf.bh where (tf.lx='BM' OR tf.lx is null)
and convert(char(4),tc.lgrq,120) =substring(convert(char(4),'2006-09-06',120),1,4)
数据7000条,查询时间16秒。sql2如下:
SELECT * FROM tContribution tc left join tKW tk on tc.bh=tk.bh left join tFYGL tf on tc.bh=tf.bh where (tf.lx='BM' OR tf.lx is null)
数据10000条,查询时间1秒。
------------------------
即说明了MSSQL用join时,最好不要加入函数,否则的话会很慢!!
还有一点很鄙视楼主.
-----------------------------------------
天翔:<!--dynamic prepend = "and">……</dynamic-->这个不是注释是什么?我也建议你回去好好xml的文档-有关注释的部分,免得让人笑话 -------------------------------------------------
不管别人说的对与错,都很认真德回答了你的问题,你连讽带刺的说别人不太好吧!!!!