查询结果去重
distinct,只能出现在所有字段的最前方,联合后面字段去重
连接查询
从一张表中查询叫单独查询,多张表联合查询,陈伟连接查询。
分类:
内连接:等值连接,非等值连接,自连接。
外连接:左连接,右连接。
全连接 几乎不用。
笛卡尔积
当两张表没有条件限制的时候,最终结果为两者乘积,为笛卡尔积
避免方法:连接时加条件,满足这个条件的记录筛选出来
内连接之等值连接
条件是等量关系
例:查询每个老师手下的学生名字。
SQL92
SQL99语法:
select 表名1.字段,表名2.字段
from 表名1
join 表名2
on 条件
where 筛选条件;
内连接之非等值连接
条件是非等量关系
例:找出不同老师手下年纪处于21-33的学生
内连接之自连接
技巧:一张表看成两张表
外连接之右连接
表存在主次关系
内连接是都匹配两张表的数据查询出来,若主要是查询A表,如果B表无对应也要查询,则使用外连接
此处为右连接,由于Ms.teng的class为3,所有没有她的学生,为null,但是teacher为主表,所以依旧查询出来。
外连接之左连接
Talk is cheap,show me the code——薪火工作室!