20141104--SQL连接查询,联合查询

 1 ---------------------------连接查询--------------------------------
 2 --横向连接查询
 3 --可以将子查询放在from之前,用来替换显示出来的信息
 4 select name as 名字,sex,age,(select name from bumen where bumen.code=biao2.bumen)部门,(select ceo from bumen where bumen.code=biao2.bumen)as ceo from biao2
 5 --连接查询 两个表必须有联系。
 6 --如果两个表有相同的列名,则需要明确是哪个表的列,格式:表名.列名
 7 --连接查询较为简便的方法,
 8 select biao2.name,sex,age,bumen.name,ceo from biao2,bumen where biao2.bumen=bumen.code
 9 --join on 另一种写法 join(加入) on(在..上) 格式:from 表名1 join 表名2 on 两个表的列关系
10 select biao2.name,sex,age,bumen.name,ceo from biao2 join bumen on biao2.bumen=bumen.code
11 --用 join on 连接两个表的中间三列(biao2的name,sex,age 和 bumen的name,zhineng,ceo)
12 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2 
13 join bumen on biao2.bumen=bumen.code 
14 ----------join on 之前的三个关键词-------------
15 --如果两个表没有主外键关系,不在join前加 关键词 的时候只显示两个表有联系的信息
16 --full
17 --在join前加 full 可以显示两个表所有的信息(包括两个表中没有联系的信息)
18 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2 
19 full join bumen on biao2.bumen=bumen.code 
20 --left 
21 --在join前加 left 只显示左边表的全部信息(包括没有关系的信息)并按左边表排序。
22 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2 
23 left join bumen on biao2.bumen=bumen.code 
24 --right 
25 --在join前加 right 只显示右边表的全部信息(包括没有关系的信息)并按右边表排序。
26 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2 
27 right join bumen on biao2.bumen=bumen.code 
28 
29 -------------------------联合查询---------------------------
30 --纵向联合查询,
31 --union  两个表的列数据类型必须对应一样才可以连接起来。具备自动去重的功能
32 --在一个表中
33 select *from biao2 where age>=39
34 union
35 select *from biao2 where age<=25
36 --在两个表中
37 select name,bumen from biao2
38 union
39 select ceo,code from bumen 

 

posted @ 2014-11-04 11:29  Tirisfal  阅读(191)  评论(0编辑  收藏  举报