ORACLE中,怎么用SQL语句查询一个电话号码中含有连续7个字符都为“1”或者连续8个字符都为“1”的值

如:有表A,有2个字段,分别为NAME,TELNAMETEL张三1301111111932李四15920203911王五1391111111102张柳0292222222... 如:有表A,有2个字段,分别为NAME,TEL
NAME TEL
张三 1301111111932
李四 15920203911
王五 1391111111102
张柳 029222222213
第二 291111119233

输出结果为:
张三 1301111111932
王五 1391111111102

因为“第二”只有6个连续字符“1”所以结果中不输出
展开
 我来答
匿名用户
2013-07-23
展开全部
CREATE TABLE test(
  NAME  varchar(10),
  TEL   varchar(20)
);


INSERT INTO test VALUES('张三',  '1301111111932');
INSERT INTO test VALUES('李四',  '15920203911');
INSERT INTO test VALUES('王五',  '1391111111102');
INSERT INTO test VALUES('张柳',  '029222222213');
INSERT INTO test VALUES('第二',  '291111119233');


如果你只查询 连续 7个1 的

那就是简单的

SQL> SELECT
  2   *
  3  FROM
  4   test
  5  WHERE
  6    TEL   LIKE  '%1111111%';

NAME                 TEL
-------------------- ----------------------------------------
张三                 1301111111932
王五                 1391111111102


如果你是要模糊的查询  连续7个   任意数字的, 也就是 7个1  , 或者 7个2 , 或者 7个3...

SQL> SELECT
  2    *
  3  FROM
  4    test
  5  WHERE
  6     REGEXP_LIKE(REVERSE(TEL), '(\d)\1\1\1\1\1\1');

NAME                 TEL
-------------------- ----------------------------------------
张三                 1301111111932
王五                 1391111111102
张柳                 029222222213
anole1982
2013-07-23 · TA获得超过160个赞
知道小有建树答主
回答量:170
采纳率:0%
帮助的人:157万
展开全部
这个昨天不是回答了?正则表达式 你还问

http://zhidao.baidu.com/question/572628391?&oldq=1#answer-1441843378

只不过你没有选我的答案而已
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
micro0369
2013-07-23 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4047万
展开全部
select * from a where tel like '%1111111%';
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shuixinyu119
2013-07-23 · TA获得超过128个赞
知道答主
回答量:105
采纳率:0%
帮助的人:41万
展开全部
使用like '%1111111%'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式