mysql_DML_select_子查询

-------------------------------------------------------------------子查询---------------------
 
--1、子查询必须位于圆括号里
--2、除非主查询理有多个字段进行比较,否则子查询的select子句里只能有一个字段
--3、子查询里不能使用order by 子句。在子查询里,我们可以利用  group by实现order by 功能
--4、返回多条记录的子查询只能与操作符配合使用(如:in)
--5、子查询不能包围在函数里
--6、操作符between不能用于子查询,但是子查询内部可以使用它
--7、select列表里不能引用任何blog/array/club或nclob类型的值
 
--select a.emp_id,a.emp_name,b.pay_rate
--from employee_tbl a,emplyee_pay_tst b
--where a.emp_id =b.emp_id
--and b.pay_rate <=(
--                 select pay_rate
--                 from emplyee_pay_tst
--                 where emp_id ='119'
--                 );
 
--select *
--from emplyee_pay_tst;
 
--select a.emp_id,a.emp_name,b.pay_rate
--from employee_tbl a,emplyee_pay_tst b
--where a.emp_id =b.emp_id
--and b.pay_rate=(
--                select pay_rate
--                from emplyee_pay_tst
--                where emp_id='119'
--                 );
 
--select *
--from emplyee_pay_tst;
 
--insert into employee_tbl 
--values('69','asee','sd','青岛','e',3,85,'');
 
--select 
 
--from employee_tbl a,emplyee_pay_tst b
--where pay_rate <=(
--                 select pay_rate 
--                 from emplyee_pay_tst
--                 where emp_id=108);
 
--update emplyee_pay_tst
--set pay_rate = pay_rate*1.2
--where emp_id in (select emp_id 
--                 from employee_tbl
--                 where emp_city ='北京'
--                 );
 
 
--delete from emplyee_pay_tst
--where emp_id=(
--              select emp_id
--              from employee_tbl
--              where emp_name ='jack');
 
子查询结果当做临时表查询:
select zxd.stu_name,zxd.sex,a.grade fr0m score a, (
select stu_id ,stu_name,sex from stu where stu_name='张晓东' )
as  zxd   where a.st_id=zxd.stu_id;
posted @ 2016-09-23 11:20  D.零下的小书屋  阅读(269)  评论(0编辑  收藏  举报