问题1
有两个字符窜
要求字符窜B的每一个字符都要在A字符窜中
比如说
A:字符窜 2,4,6,7
B:字符窜 26
满足条件A:字符窜 2,4,6,7
B:字符窜 268
不满足虽然可以先把B拆开成2,6
用    2,4,6,7  like %2%
      2,4,6,7  like %6%
实现,但是感觉挺麻烦的想用 REGEXP 来实现
这个正则表达式该怎么写啊?
问题2
请问下面的语句对么,如果对能匹配成立么?
select 'abcdefg' like 'a_c_e_g'

解决方案 »

  1.   

    select ',2,4,6,7,' regexp ',2,',
    ',2,4,6,7,' regexp ',6,',
    ',2,4,6,7,' regexp ',8,'把B拆开成2,6,8
      

  2.   

    问题1,可以直接用REGEXP实现,不用拆开。
    成立。mysql> select 'abcdefg' like 'a_c_e_g';
    +--------------------------+
    | 'abcdefg' like 'a_c_e_g' |
    +--------------------------+
    |                        1 |
    +--------------------------+
    1 row in set (0.06 sec)mysql>
      

  3.   

    楼上的,拆来来一个一个的匹配的话,用like就可以了
    能用一个正则表达式实现么
      

  4.   

    假设你的B字符中的字符顺序与A一致
    select replace('2,4,6,7',',','') regexp '268' ,
     replace('2,4,6,7',',','') regexp '246',
     replace('2,4,6,7',',','') regexp '264' 注意这条