我们在查询数据是时候最经常用到的就是like‘%ddd%’,这种形式的,但实在是太模糊了,请教一下更精确的查询办法,谢谢!

解决方案 »

  1.   

    更精确?那就要看楼主的条件了,如果只是说字符串中有 ddd 这串字符的列值,那么就 like '%ddd%' 吧!具体要看楼主模糊查询的需求。
      

  2.   

    select *
    from tb
    like '%xxx%'
    貌似会造成全表查询,楼主也可以用一些字符串函数对你要差的字符串进行操作后再查呀
      

  3.   


    select *
    from s
    where LEFT(SNAME,1)='张'
    S#              SNAME      AGE         SEX
    --------------- ---------- ----------- ----
    040405028       张波         20          F 
    200810405102    张荣锋        22          男
    200810405107    张超         23          男
    200810405110    张森         22          男
    200810405135    张庆菊        22          女(5 行受影响)
      

  4.   

    根据你的要求来写查询语句 尽量不要用到like '%col%"
      

  5.   

    我就是想实现精确的查询,不用like那个模糊查询,全文索引怎么用啊?推荐一下学习全文索引的书吧?谢谢了
      

  6.   

    精确查询就是用 "="呗
    select * from tb where col1='ddd'