目录:
1.数据库设计
2.关联查询
- 1.多表查询
- 2.内连接查询
- 3.左连接查询
- 4.右连接查询
一.数据库设计
三大范式:
第一范式:要求表的每个字段必须是不可分割的独立单元
第二范式:在第一范式基础上,要求每张表只表达一个意思,表的每个字段都和主键有依赖关系。
第三范式:在第二范式基础上,要求每张表的主键之外的其他字段都只能和主键有直接决定依赖关系。
二 .关联查询(多表查询)
1.多表查询
规则:a)确定查询那些表
b)确定那些字段
c)表与表之间的联系(规律:连接条件数量是表数量-1)
交叉连接查询(产生笛卡尔乘积现象)
select employee.id ,emp.name , employee.name from emp,employee;
2.内连接查询来两种语法:
(1)普通
select employee.id ,emp.name , employee.name from emp,employee where employee.empid=emp.id;
(2)inner join ..on..
select employee.id ,emp.name, employee.name from employee inner join emp on employee.empid = emp.id;
别名查询
select e.id ,m.name, e.name from employee e inner join emp m on e.empid = m.id;
3.左连接查询:使用左边表的数据去匹配右边表的数据(左边数据全部显示)
left outer jion...on...
select m.name, e.name from emp m left outer join employee e on e.empid = m.id;
4.右外连接查询:使用右边表的数据去匹配左边表的数据(右边数据全部显示)
right outer jion ... on...
select m.name, e.name from employee e right outer join emp m on e.empid = m.id;
上接文章:Mysql学习笔记(4)-数据约束