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

多列模糊查询 性能怎么提升

2013-01-06 
多列模糊查询 性能如何提升我有一数据表里面字段有15个, 其中 userid, name ,callsign,cnName,IMO 要作模

多列模糊查询 性能如何提升
我有一数据表里面字段有15个, 其中 userid, name ,callsign,cnName,IMO 要作模糊查询, 用户输入一个查询条件,  这五项都要进行模糊匹配

    

SELECT userid, name ,callsign,cnName,IMO FROM TBInfo where userid like 'liy%' or namelike 'liy%' or callsignlike 'liy%'  or cnName like 'liy%' or IMO like 'liy%'


  表中数据有150W,现在这样查询一次获得结果要7秒钟, 

  如果改进才能使用查询速度在1秒以内完成。



    原想  将表平均分到四个数据库里 DB0,DB1,DB2,DB3  查询时使用 Union 来查询,时间反而更长了


   
[解决办法]
建了索引吗
建了索引吗
[解决办法]
楼主的SQL是不是有点问题啊
这几个条件不应该是or的关系吧,换成and,这样才有意义啊,几个条件才能同时起作用

SELECT userid, name ,callsign,cnName,IMO FROM TBInfo where userid like 'liy%' and namelike 'liy%' and callsignlike 'liy%'  and cnName like 'liy%' and IMO like 'liy%'

[解决办法]
对做条件的字段建索引

热点排行