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