Mysql连接查询
来源:互联网 发布:amv格式视频软件 编辑:程序博客网 时间:2024/04/26 20:09
关系数据库,是建立在关系模型的基础上的数据库,借助于集合代数等数学概念上的方法来处理数据库中的数据。
集合相乘,笛卡尔积,起始就是两个集合的完全组合。
设集合A有M个元素,M个元素各不相同。设集合B有N个元素,N个元素各不相同。 A*B得到的积,M*N个元素,不可能重复。
集合相乘用逗号表示:select * from ta,tb; ta表*tb表。
下面进入正题:
左连接
select 列 1,列 2,列 N,from
tableA left join tableB
on tableA 列 = tableB 列;
#where group having 照常写
以左表为准,去右表找匹配数据。找不到匹配,用NULL补齐。
如图,匹配的成为新行,没有匹配的用NULL补齐。
右连接
select 列 1,列 2,列 N,from
tableA right join tableB
on tableA 列 = tableB 列;
#where group having 照常写
左连接完全可以转化为右连接,只需要改变方向即可,所以平时可以用左连接代替右连接。
内连接
select 列 1,列 2,列 N,from
tableA inner join tableB
on tableA 列 = tableB 列;
#where group having 照常写
内连接不要左右连接中NULL的那一部分。
左右连接的并集:不支持。目前不支持外连接,outer join,可以用union来达到目的。
面试题:三表连查
解法:
select hid,t1.tname as hname, mres, gid,t2.tname as gname, matime from
m left join t as t1 on m.hid = t1.tid
left join t as t2 on m.gid = t2.tid
where matime between '2006-06-01' and '2006-07=01';
用了两次左连接,输出结果为:
0 0
- mysql 子查询,连接查询
- MySQL中的连接查询
- perl连接查询mysql
- mysql数据库 连接查询
- MySQL连接查询
- mysql连接数查询
- MySQL连接查询
- mysql 连接查询
- MySQL 查询 -- 表连接
- MySQL 查询 -- 表连接
- mysql连接查询
- MySQL连接查询
- 25、MySQL-连接查询
- Mysql连接查询
- MySQL连接查询
- mysql中的连接查询
- mysql命令行连接查询
- MYSQL之连接查询
- mac升级后导致apache无法使用
- JS单页面应用实现前端路由(hash)
- BMC IPMI常用命令
- (笔记)Spring MVC学习指南_Spring MVC介绍
- Python 总结:进阶1
- Mysql连接查询
- fork,vfork,clone
- 【FFMPEG】ffmpeg 中添加264支持
- 支付宝信用
- 委托的小总结
- 照猫画虎--模板模式(继承)
- Maven 将项目部署到远程仓库
- Illegal character in query Url中含有{}
- 内存与链表