SELECT b.*
  FROM test b
 WHERE b.address_id LIKE '2,%'
    OR b.address_id LIKE '%,2%'
    OR b.address_id = '2'
    OR b.address_id LIKE '%,2,%'

解决方案 »

  1. cvm

  2. 这会把第一行也会查出来的吧
    select * from t where regexp_like(address_id, '(^|,)+2+(,|$)');
      


  3. 这会把第一行也会查出来的吧

    这会把第一行也会查出来的吧
    select * from t where regexp_like(address_id, '(^|,)+2+(,|$)');
    regexp_like这个方法是什么方法,是自己定义的吗
      

  4. 这个是正则表达式啊,你上网可以搜搜就知道了我执行了这句sql,说找不到regexp_like这方法
      

  5. 这个是正则表达式啊,你上网可以搜搜就知道了
    我用的是MySQL
      

  6. 这个是正则表达式啊,你上网可以搜搜就知道了
    我用的是MySQLselect * from t b
     WHERE b.address_id LIKE '2,%'
        OR b.address_id LIKE '%,2,%'
        OR B.ADDRESS_ID LIKE '2'
        OR b.address_id LIKE '%,2'PS:你以后发帖注意分区,这里是oracle版块
      

  7. ','||address_id||',' like '%,2,%'