虽然会了,但是我感觉还是做个笔记吧,,以后可以来看看,复习复习
今天看书遇到了这个语句:
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>
大家可以自己试试,,,嘿嘿,去吃饭了