我想把字两个符串字段连接起来再查询里面是否包含keyword:
select * from mytab where (field1+field2) like '%keyword%';
上面的不行,该怎么写呢?

解决方案 »

  1.   

    select * from mytab where concat(field1,field2) like '%keyword%'
      

  2.   

    MYSQL中字符串相连使用函数CONCATselect * from mytab where concat (field1,field2) like '%keyword%';
      

  3.   

    MySQL中concat函数
    使用方法:
    CONCAT(str1,str2,…)  返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。
    select * from mytab where concat(field1,field2) like '%keyword%';
      

  4.   

    select * from mytab where (field1+field2) like '%keyword%';->
    select * from mytab where CONCAT((field1,field2) like '%keyword%';
    OR
    select * from mytab where CONCAT((field1,field2) REGEXP 'keyword';
      

  5.   

    使用concat(field1, field2)再like,
    这样的like,效率不高吧。考虑使用substr('<keyword>', concat(field1, field2))