数据库的多表联结
来源:互联网 发布:乐高机器人用什么编程 编辑:程序博客网 时间:2024/06/11 23:53
数据库的联结分为三种
1.内联结:内连接查询操作列出与连接条件匹配的数据行,它使用比较运算符比较被连接列的 列值。内连接分三种:
1>等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结 果中列出被连接表中的所有列,包括其中的重复列。
2>不等连接:在连接条件使用除等于运算符以外的其它比较运算符比较被连接的 列的列值。这些运算符包括>、>=、<=<、!>、!<和<>。
3>自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选 择列表指出查询结果集合中所包括的列,并删除连接表中的重复列。
2.外联结:外连接,返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接或左连接))、右表(右外连接或右连接)或两个边接表(全外连接)中的所有数据行。
3.交叉联结:交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到 结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查 询条件的数据行数例,titles表中有6类图书,而publishers表中有8家出版社,则下 列交叉连接检索到的记录数将等于6*8=48行。
举个例子简单说明下:
创建两张表student、gread
student gread
id name id score
1 aa 1 60
2 bb 2 80
3 cc
内联结:select s.id,s.name,g.score from student s inner join gread g on s.id=g.id
结果为: id name score
1 aa 60
2 bb 80
左外联结:select s.id,s.name,g.score from student s left join gread g on s.id=g.id
结果为: id name score
1 aa 60
2 bb 80
3 cc null
右外联结:select s.id,s.name,g.score from student s right join gread g on s.id=g.id
结果为: id name score
1 aa 60
2 bb 80
交叉联结:select type,pub_name from titles cross join publishers order by type
更多精彩请点击 http://www.gopedu.com/
0 0
- 数据库的多表联结
- 数据库的集合运算(表的加减法和联结)
- SQl 表的联结
- 表的联结方法
- 数据库的几种联结方式整理
- MySQL数据库——联结表
- mysql多表联结查询
- 联结表
- 数据库9:联结表 高级联结 组合查询 全文本搜索
- 表的联结、运算符学习笔记
- ORACLE 表间的联结方式
- Mybatis多表联结查询底层配置
- 【数据库面试题】 1 - SQL基础 - 联结表
- MySQL联结表
- SQL-联结表
- MySQL-联结表
- mysql表联结
- 15 联结表
- ubuntu12.04显示桌面的快捷键
- stc单片机不断电下载程序
- hdoj1015
- ganglia命令
- 整数划分问题 ----- 递归算法
- 数据库的多表联结
- cursor
- Xcode及模拟器SDK下载
- Eclipse引入jar包的三种方式
- NYOJ 独木舟上的旅行
- Android使用AchartEngine绘制曲线图
- android之service
- Buffalo Ajax框架使用
- Android onTouchEvent, onClick及onLongClick的调用机制