IT开放社区

WHERE过滤子句LIKE模糊查询操作符

 LIKE模糊查询操作符:"%"代表任意一个或多个字符,“_"代表任意单个字符;匹配内容用单引号引用。

例:查询员工姓名中有A的员工信息;

SQL@itkaifang> SELECT empno,ename,sal FROM emp WHERE ename LIKE '%A%';
     EMPNO ENAME             SAL
---------- ---------- ----------
      7499 ALLEN            1600
      7521 WARD             1250
      7654 MARTIN           1250
      7698 BLAKE            2850
      7782 CLARK            2450
      7876 ADAMS            1100
      7900 JAMES             950
7 rows selected.
SQL@itkaifang>
SQL@itkaifang> SELECT empno,ename,sal FROM emp WHERE ename LIKE '_A%';
     EMPNO ENAME             SAL
---------- ---------- ----------
      7521 WARD             1250
      7654 MARTIN           1250
      7900 JAMES             950
SQL@itkaifang>

使用ESCAPE标识符定义转义符,如匹配字段出现”_“需要搜索,就出现需转义的需求。

例:查询员工姓名包含”_“的员工信息;

SQL@itkaifang> SELECT * FROM emp;
     EMPNO ENAME      JOB              MGR HIREDATE          SAL       COMM     DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
      7369 SMITH      CLERK           7902 1980-12-17        800                    20
      7499 ALLEN      SALESMAN        7698 1981-02-20       1600        300         30
      7521 WARD       SALESMAN        7698 1981-02-22       1250        500         30
      7566 JONES      MANAGER         7839 1981-04-02       2975                    20
      7654 MARTIN     SALESMAN        7698 1981-09-28       1250       1400         30
      7698 BLAKE      MANAGER         7839 1981-05-01       2850                    30
      7782 CLARK      MANAGER         7839 1981-06-09       2450                    10
      7788 SCOTT      ANALYST         7566 1987-04-19       3000                    20
      7839 KING       PRESIDENT            1981-11-17       5000                    10
      7844 TURNER     SALESMAN        7698 1981-09-08       1500          0         30
      7876 ADAMS      CLERK           7788 1987-05-23       1100                    20
      7900 JAMES      CLERK           7698 1981-12-03        950                    30
      7902 FORD       ANALYST         7566 1981-12-03       3000                    20
      7934 MILLER     CLERK           7782 1982-01-23       1300                    10
      8888 QIN_BING                                         9999
15 rows selected.
SQL@itkaifang> SELECT empno,ename,sal FROM emp WHERE ename LIKE '%\_%' ESCAPE '\';
     EMPNO ENAME             SAL
---------- ---------- ----------
      8888 QIN_BING         9999
SQL@itkaifang>

其中'\'为定义的转义符

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类
最新文章
随机文章
站点信息
  • 文章总数:113
  • 页面总数:2
  • 分类总数:3
  • 标签总数:0
  • 评论总数:0
  • 浏览总数:24663
左邻右舍

BlogPowerBy Z-BlogPHP 1.5 Zero ;Theme By 爱墙纸

IT开放社区:京ICP备13044647号.初创于Oracle DBA实战班.邮箱:admin@itkaifang.com

分享:

支付宝

微信