首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

怎么优化这断程序的访问速度

2012-08-26 
如何优化这断程序的访问速度?SELECT Y_yb_js.c_yb_lsh, U_jzsfk_m.c_receipt_no, U_jzsfk_m.c_brname, Y_y

如何优化这断程序的访问速度?
SELECT Y_yb_js.c_yb_lsh, U_jzsfk_m.c_receipt_no, U_jzsfk_m.c_brname, Y_yb_js.c_tc_zf+Y_yb_js.c_zf_zf+Y_yb_js.c_gwy_bz+Y_yb_js.c_xj_zf+Y_yb_js.c_de_zf AS hjje, U_jzsfk_m.c_jf_date, P_deptemp.c_name, Y_yb_js.c_tc_zf, Y_yb_js.c_zf_zf, Y_yb_js.c_gwy_bz, Y_yb_js.c_xj_zf, Y_yb_js.c_de_zf, Y_yb_js.c_gwy_fh, Y_yb_js.c_qt_zf, Y_yb_js.c_zf_ye, Y_yb_js.c_ry_type, Y_yb_js.c_yb_type, Y_yb_js.c_reg_id 
FROM u_jzsfk_m U_jzsfk_m INNER JOIN u_reg_out U_reg_out ON U_jzsfk_m.c_reg_id = U_reg_out.c_id INNER JOIN p_deptemp P_deptemp ON U_reg_out.c_op_code = P_deptemp.c_code INNER JOIN y_yb_js Y_yb_js ON Y_yb_js.c_yb_lsh = U_jzsfk_m.c_ybjs_lsh 
WHERE Y_yb_js.c_yb_type IS NULL AND Y_yb_js.c_ry_type = '13' and U_jzskf.c_jf_date>='2011.12.01'
ORDER BY U_jzskf.c_jf_date DESC

[解决办法]

SQL code
 在U_jzskf.c_jf_date上加上索引看看
[解决办法]
看你联表查询比较多,联表查询的优化方向:1.on后面的字段都是聚集索引,并且两个表的行数差不多,这是最快的一种联表查询 2.如果业务需求无法满足1所说的方向,一般是循环联表查询,查询结果行数少的放在左输入。

还有一点是2楼已经说过的,where后面的字段最好也有索引,索引自己权衡的加

如果还是无法提高速度,就考虑怎么减少联表查询,看sql语句能否换换。


[解决办法]
Y_yb_js.c_yb_type IS NULL
是大忌

热点排行