这个sql语句怎样改了下,能提高点速度?现在我用这个sql几千条数据,分页比较慢。
select * from moonjxcmx where buyersId like '%"+ViewState["seeBuyersId"]+"%' and buyersMs like '%"+ViewState["seeBuyersName"]+"%' and goodsId like '%"+ViewState["seeGoodsId"]+"%' and goodsSpell like '%"+ViewState["seeGoodsName"]+"%' and onlyId like '%"+seeOnlyId.Text+"%' order by "+str+" "+ViewState["Direction"].ToString()

解决方案 »

  1.   

    这么多like,难怪慢
    数值类型全部换成=
      

  2.   

    1.不要用*打开所有~~
    2.用charindex代替Like~
      

  3.   

    like 尽量少用,如果能用=代替就用..
    看你情况吧,总之like少用或者你用 charindex('"+ViewState["seeBuyersId"]+"',buyersId)>0 代替like试试
      

  4.   

    不要用*还有少用like,int字段类型的可以用=代替like
      

  5.   

    1.不要用*打开所有~~ 
    2.用charindex代替Like~3.要不用存储过程?
      

  6.   

    1.最好不用*来检索所有的字段2.少用like 改用charindex()偿试一下,可以用"="来判断的最好不用3.可以给表加索引优化一下
      

  7.   

    太多like了另外查询不要× ,具体到字段
      

  8.   

    你的like太多,怎么建索引都不会太快
      

  9.   

    1.不用*,用你要的字段名
    2.少用like,确定值的用=,固定值的界面就让选,然后用=
    3.改用存储过程