比如我有数据啊啊123网吧
拜拜12网吧
猜猜1网吧
淡定网吧我但是我用 like'%___网%' 查不出来 啊啊123网吧  。。很郁闷。试了好几种办法都不行。请问下高手 like 后面怎么加通配符 才能查询出 啊啊123网吧在线等,急啊

解决方案 »

  1.   

    with b as
    (
    select '啊啊123网吧'  A from dual
    union all
    select '拜拜12网吧' from dual
    union all
    select '猜猜1网吧' from dual
    union all
    select '淡定网吧' from dual
    )select A  from b where REGEXP_SUBSTR(A,'[1-9]',1)>0
      

  2.   

    我的数据在ORACLE数据库中,现在只要select 查询出  啊啊123网吧  类似的数据。也就是说查出文字中间带3位数字的数据。麻烦你再帮忙看下。
      

  3.   

    问个问题就说清楚点好么,谁知道你为什么要查出啊啊123网吧啊
    with b as
     (select '啊啊123网吧' A
        from dual
      union all
      select '拜拜12网吧'
        from dual
      union all
      select '猜猜1网吧'
        from dual
      union all
      select '淡定网吧' from dual)
    select A from b where REGEXP_count(A, '\d') = 3
      

  4.   

    with b as
    (
    select '啊啊123网吧'  A from dual
    union all
    select '拜拜12网吧' from dual
    union all
    select '猜猜1网吧' from dual
    union all
    select '淡定网吧' from dual
    )select A from b where REGEXP_SUBSTR(A,'[3]',1)>0
      

  5.   

    WITH b AS
     (SELECT '啊啊123网吧' a
        FROM dual
      UNION ALL
      SELECT '拜拜1234网吧'
        FROM dual
      UNION ALL
      SELECT '123猜猜1网吧222'
        FROM dual
      UNION ALL
      SELECT '123淡定网吧123'
        FROM dual)
    SELECT a
      FROM b
     WHERE regexp_instr(a, '[^0-9]\d{3}网吧', 1) > 0;
      

  6.   

    现在只要select 查询出  数据中有3位及以上的相连数字的数据数字3位及以上,前后文本字数不确定。
      

  7.   


    WITH b AS
     (SELECT '啊啊123网吧' a
        FROM dual
      UNION ALL
      SELECT '拜拜1234网吧'
        FROM dual
      UNION ALL
      SELECT '123猜猜1网吧222'
        FROM dual
      UNION ALL
      SELECT '123淡定网吧123'
        FROM dual)
    SELECT a
      FROM b
     WHERE regexp_instr(a, '\d{3}', 1) > 0;
      

  8.   

    happybinger2002  你好。你写的这个我有点看不懂。。我给出的啊啊123网吧就是随便想的。主要为了表达意思。。现在在oracle数据库中有个表,表里一个字段的数据格式就是   文文文文文文23文文文文文文22文文文文123字 这样的。因为有几十万条。我现在要查询出的数据是  字前面有3位数字及以上的数据。因为我们的标准时字前面只能有2位数字。查出来结果后发给他们要去修改中间有3位数字的数据。
    麻烦你再费心,看看这条select语句怎么写。。谢谢了,在线等。
      

  9.   


    --测试数据
    WITH b AS
     (SELECT '啊啊123网吧' a
        FROM dual
      UNION ALL
      SELECT '拜拜1234网吧'
        FROM dual
      UNION ALL
      SELECT '猜猜1网吧22'
        FROM dual
      UNION ALL
      SELECT '淡定网吧'
        FROM dual)--SQL
    SELECT a
      FROM b
     WHERE regexp_like(a, '[[:digit:]]{3}')
    --result:啊啊123网吧
    拜拜1234网吧