首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

LIKE有关问题

2012-01-01 
LIKE问题SELECTU_ID,U_MAILADDRESS,U_SERIAL,U_PASSWD,U_NAMEFROMT_USERWHEREU_NAMELIKE%#1%ANDROWNUM 10

LIKE问题
SELECT     U_ID   ,   U_MAILADDRESS   ,   U_SERIAL   ,   U_PASSWD   ,   U_NAME     FROM     T_USER    
WHERE   U_NAME   LIKE   '%   #1   % '   AND   ROWNUM <101

#1     为条件
当条件为%时,查询出来的是全部数据

怎样才能避免这个问题

[解决办法]
可以定义一个转义符 比如 '/ '


SELECT U_ID , U_MAILADDRESS , U_SERIAL , U_PASSWD , U_NAME FROM T_USER
WHERE U_NAME LIKE '% /% % ' AND ROWNUM <101 escape '/ ';
[解决办法]
SQL> select * from f_test;

FID
---------------
%kkk
kkk

SQL> select * from f_test where fid like '%kkk ';

FID
---------------
%kkk
kkk

SQL> select * from f_test where fid like '\%kkk ' escape '\ ';

FID
---------------
%kkk

SQL>
[解决办法]
是右斜 \,不是左斜 /

热点排行
Bad Request.