Mysql多表查询
来源:互联网 发布:王宝强判决结果 知乎 编辑:程序博客网 时间:2024/05/16 17:49
多表关联关系种类
1.一对一
例如 人与身份证person表
字段 id name
card表
字段 id number pid
2.一对多(最常见,开发中应用于最多的一种关系)
例如 员工与部门
emp
字段 empno ,ename ,deptno
dept
字段 deptno address dname
3.多对多(会产生一个中间表,用户来描述表与表之间的映射关系)
例如 教师与学生
teacher
id name
student
id name
ts
id tid sid
多对多举例
create table teacher(id int primary key auto_increment,name varchar(20))create table student(id int primary key auto_increment,name varchar(20))create table ts(id int primary key auto_increment,tid int,sid int,constraint tid_fk foreign key(tid) references teacher(id),constraint sid_fk foreign key(sid) references student(id))insert into teacher(name) values('tom');insert into teacher(name) values('tony');insert into student(name) values('zhangsan');insert into student(name) values('lisi');insert into ts(tid,sid) values(1,1);insert into ts(tid,sid) values(1,2);insert into ts(tid,sid) values(2,2);
多表查询
l连接分类•交叉连接•内连接•左外连接•右外连接•全连接•自连接
多表查询时会产生笛卡尔积(简单说将两个表中所有字段相乘)
为了消除迪卡尔积,需要对表与表之间进行条件判断
比较常见,主外键等值判断。
在多表查询中我们首先要做的事情就是将迪卡尔积消除,
然后在根据具体的条件进行操作。
0 0
- 【MySQL】MySQL多表查询
- MySQL 多表查询
- mysql多表查询
- Mysql多表查询
- MySQL多表查询
- MYSQL多表查询
- MySQL多表查询
- MySQL多表查询
- MySQL多表查询
- MySQL多表查询
- MySQL多表查询
- MySQL多表查询
- mysql 多表查询
- MySQL多表查询
- MySQL多表查询
- MySQL多表查询
- MySql:多表查询
- MySQL多表查询
- spring管理Hibernate 的懒加载
- Extjs4 实用技术指南(一) --- Grid
- time命令的输出
- linux bridge and vlan explained
- ganglia(神经节)监控系统了解
- Mysql多表查询
- Java_io体系之RandomAccessFile简介、走进源码及示例——20
- 动态库搜索路径
- 关于ORA-02069错误[序列原因解决方案]
- 重写UIView-让我们随心所欲的定制属于自己的UI控件
- jQuery Dialog 弹出层对话框插件
- 2013/12/11 Jquery UI插件 sortable库
- Flex页面切换之mx:ViewStack
- Troubleshot for SSL issue for Weblogic server