模糊查找
SQL关键字:LIKE
SQL语句:where 列名 like 表达式
通配符:
1、%:零个、一个或者多个字符;
2、_:一个任意字符。
3、针对字符类型。
示例:
名字以J开头,S结尾的员工姓名,工作,工资;
SQL语句:select ename,sal,job from emp where ename like 'J%S';
示例:
名字第三个字符为L的员工姓名,工作,工资;
SQL语句:select ename,sal,job from emp where ename like '__L%';
子查询
SQL语句:
查询的结果作为查询的条件进行下一次的查询。关键在于分析表的关系,将问题拆分成每个小的查询语句,最后将查询语句组合起来。
重点:找出表之间的关系,即查找列之间的关系。
组合SQL语句:Select语句嵌套。
示例:
查询出销售部(SALES)下面的员工姓名,工作,工资。
SQL语句:select ename,sal,job,deptno from emp where deptno=(select DEPTNO from dept where DNAME='SALES');
练习题:
1、 创建一查询,显示与BLAKE在同一部门工作的雇员的姓名和受雇日期,但是BLAKE不包含在内。
SQL语句:select ename,hiredate from emp where( ename!='BLAKE' and deptno=(select deptno from emp where ename='BLAKE'));
2、 显示位置在DALLAS的部门内的雇员姓名、工资以及工作。
SQL语句:select ename,sal,job from emp where deptno=(select DEPTNO from dept where loc='DALLAS');
3、 显示被KING直接管理的雇员的姓名以及工资。
SQL语句:select ename,sal,job from emp where mgr=(select empno from emp where ename='KING');
4、创建一查询,显示能获得与SCOTT一样工资和奖金的其他雇员的姓名、受雇日期以及工资。
SQL语句:select ename,sal,hiredate from emp where (sal=(select SAL from emp where ename='SCOTT')and Comm= (select SAL from emp where ename='SCOTT' );