oracle 默认escape_Oracle中escape关键字的用法

虽然会了,但是我感觉还是做个笔记吧,,以后可以来看看,复习复习

今天看书遇到了这个语句:select name

from promotions

where name like '%\%%' escape '\'

/

我看了之后有些不解,,,,,然后在网上查了查资料。。。。

先给大家解释一下吧:

其中escape关键字是指定转义字符的,上面的转义字符就是 \

而这个转义字符是转谁的意呢?????

当然是转特殊字符的意思啦,比如:%,_,&等

因为想要查找name中含有%的信息,但是%本来就是一个特殊字符-->用来匹配任意个字符的,所以这里需要转义字符转移一下啦,就没有匹配任意个字符的意思了;

看看下面的几个例子,escape分别制定了其他字符为转义字符:

1、设置  '-'为转义字符

select name

from promotions

where name like '%-%%' escape '-'

SQL>

NAME

------------------------------

10% off Z Files

20% off Pop 3

30% off Modern Science

20% off Tank War

10% off Chemistry

20% off Creative Yell

15% off My Front Line

7 rows selected.

2、设置  '(' 为转义字符:

select name

from promotions

where name like '%(_%' escape '('

/

SQL> /

no rows selected

读者可以自己把其他的符号设置为转义字符,我就不在这里给大家设置了

注意:我上面给大家演示的表还有结构如下:

SQL> desc promotions;

Name Null? Type

----------------------------------------- -------- ----------------------------

PROMOTION_ID NOT NULL NUMBER(38)

NAME NOT NULL VARCHAR2(30)

DURATION INTERVAL DAY(3) TO SECOND(4)

SQL> select name

2 from promotions;

NAME

------------------------------

10% off Z Files

20% off Pop 3

30% off Modern Science

20% off Tank War

10% off Chemistry

20% off Creative Yell

15% off My Front Line

7 rows selected.

SQL>

大家可以自己试试,,,嘿嘿,去吃饭了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值