mysql 匹配 ,我想查出和a相等或者以a开头且长度为2的所有单词该怎么办?
select * from Tkeywords where keyword ……

解决方案 »

  1.   

    select * from Tkeywords where mid(keyword,1,1)='a' and length(keywords)=2
      

  2.   

    mid(keyword,1,1)='a'这是什么意思
      

  3.   


    取keyword的第一个字符,从第一个字符开始,取一个字符
    select * from Tkeywords where (mid(keyword,1,1)='a' and length(keywords)=2) or mid(keyword,1,1)='a'
      

  4.   

    select * from Tkeywords where keyword like 'a_';
      

  5.   

    mid(keyword,1,1)='a' 这种效率比较差。建议直接用 like 'a_'; 比较清晰明了。
      

  6.   

    select 
      * 
    from 
      Tkeywords 
    where 
      keyword like 'a%' 
    and 
      length(keywords)=2
      

  7.   

    这个方法好,但是这样查询的话会只查询出长度为2的,而仅仅以a开头的是查不出来了啊。

    select * from Tkeywords where keyword like 'a_' or keyword='a';
      

  8.   

    like 'a_'; 应该不慢啊,这个方法是可以利用到索引的。如果没有索引,则 like 'a_' 的执行速度也远高于 mid(keyword,1,1)='a' and length(keywords)=2