有字段  '你好李先生下午好'  '下午好李先生你好
'
其中'你好' '下午好'是每次都会出现的,只是有时在前,有时在后 '李先生'是变化的 我需要得到 '李先生'MYSQL语法如何才能做到呢?
十分感谢 谢谢

解决方案 »

  1.   

    mysql> set @x='你好李先生下午好';
    Query OK, 0 rows affected (0.00 sec)mysql> select replace(replace(@x,'你好',''),'下午好','');
    +--------------------------------------------+
    | replace(replace(@x,'你好',''),'下午好','') |
    +--------------------------------------------+
    | 李先生                                     |
    +--------------------------------------------+
    1 row in set (0.00 sec)mysql> set @x='下午好李先生你好';
    Query OK, 0 rows affected (0.00 sec)mysql> select replace(replace(@x,'你好',''),'下午好','');
    +--------------------------------------------+
    | replace(replace(@x,'你好',''),'下午好','') |
    +--------------------------------------------+
    | 李先生                                     |
    +--------------------------------------------+
    1 row in set (0.00 sec)mysql>
      

  2.   

    replace(replace(@x,'你好',''),'下午好','')用REPLACE替换你好'、 '下午好即可
      

  3.   

    这里等于说是直接把这两个词换成了空格,之后要是想获取“李先生”,用TrimLeft();TrimRight();处理后再获取,对不?