select t.*,zx.GLBM,zx.QYMC_GS
from T_FZCHXX_SWD t
inner join t_qyxx_zhongxin zx on (zx.zch_gs = substr(t.qyzch, 1, length(t.qyzch)-5) or zx.newzch_gs = substr(t.qyzch, 1, length(t.qyzch)-5))
由于数据库中数据过多,造成执行效率超慢,那位能优化下 或者其他的方法解决下。。。
------解决方案--------------------------------------------------------
在T_FZCHXX_SWD上建立1个冗余字段,比如为NEWqyzc,内容为substr(t.qyzch, 1, length(t.qyzch)-5),在此字段上建立索引,在
t_qyxx_zhongxin的zch_gs、newzch_gs字段上建立索引
select t.*,zx.GLBM,zx.QYMC_GS
from T_FZCHXX_SWD t
inner join t_qyxx_zhongxin zx on zx.zch_gs =NEWqyzc
or zx.newzch_gs = NEWqyzc
------解决方案--------------------------------------------------------
不能改表的话,你目前的语句则没什么可优化的了。