oracle中模糊查询

来源:百度知道 编辑:UC知道 时间:2024/05/06 04:12:55
SQL> select * from student where sname like '%马%';

SNO SNAME SD SC SAGE SS
----- ---------- -- -- ---------- --
96001 马小燕 CS 01 21 女
97001 马蓉 MA 02 19 女
96005 司马志明 CS 02 18 男

SQL> select * from student where sname like '%马____';

SNO SNAME SD SC SAGE SS
----- ---------- -- -- ---------- --
96005 司马志明 CS 02 18 男

为什么在第二次查询时马小燕这条数据不能查询出来
我____有四个“_”

"_"表示一个字符,要想查出马小燕这条数据,在马后面写两个“_”

在oracle中'_'是表示一个字符,如果你用like '%马__' 两个'_' 查出来的只是马后面有2个字符的,类似马蓉这样的记录就查不出来了,如用like '%马_',一个'',就只能查出后面有1个字符的,类似马蓉这样的记录