内连接与左右连接
来源:互联网 发布:java反射的作用 编辑:程序博客网 时间:2024/05/04 09:34
如题:查询价格大于3000元的商品及其栏目的名称
什么叫1+N模式
流程:1,查询到大于3000的商品,循环从栏目表里找对应的栏目名称
1条语句获得n多条记录进行了n多次查询
由此引入 连接查询
1、内连接查询
select boy.hid,boy.bname,girl.gname from boy inner join girl on boy.hid=girl.hid;
简单写法:
select boy.hid,boy.bname,girl.gname from boy,girl where boy.hid=girl.hid;
2、左连接
打个比方:内连接是根据hid严格一一配对。左连接就很和蔼,对着屌丝说,没事你也一起来把,只不过现在没有女票,你的女票就为null(没有),然后就按照boy小组到对应的右表一一开始配对。
select boy.hid,boy.bname,girl.gname from boy left join girl on boy.hid=girl.hid;
以下为右连接
练习题:
现有如下两张表:
要求查询的结果为:
第一种方法:
先将m与t左连接一次再把结果与t在左连接一次。
select mid,hid,hname,mres,gid,tname as gname,matime from (select mid,hid,tname as hname,mres,gid,matime from m left join t on hid=tid) as temp left join t on gid=tid;
第二种方法: 将t表“复制”2份(通过不同的命名使得看似变成2张表)一份与hid连接一份与gid连接
select mid,hid,t1.tname as hname,mres,gid,t2.tname as gname,matime from m left join t as t1 on t1.tid=hid left join t as t2 on t2.tid=gid;
第三种方法;思想同第二种方法,采用内连接
select mid,hid,t1.tname as hname,mres,gid,t2.tname as gname,matime from m,t t1,t t2 where t1.tid=hid AND t2.tid=gid;
0 0
- 内连接与左右连接
- 左右外连接与内连接
- SQL语句where与having区别、内连接,外连接,左右外连接,交叉连接
- mysql的左右内连接
- 【数据库】左右连接和内连接
- 浅析数据库中内连接、全连接与左右连接的不同点
- mysql 左右连接 以及内连接 多表连接
- 关联查询 内连接 左右外连接 完全外连接
- mysql左右内连接(转)
- mysql的左右内连接用法实例
- 多表【左右内混合】连接查询
- mysql左右内连接一句话理解
- MySQL_内、左右连接及外键
- 内连接与外连接
- 外连接与内连接
- 内连接与外连接
- 内连接与外连接
- 内连接与外连接
- Android-System类
- Installing Spark Guid (1)
- 操作系统精髓与设计原理-进程描述和控制
- 在Java中对mysql数据库插入datetime类型数据
- 今日开始写博客,一个礼拜最少两篇
- 内连接与左右连接
- 编写一个程序,它打开一个文本文件,逐个字符地读取该文件,直到到达文件末尾,然后指出该文件中包含多少个字符
- QT 用流读写二进制文件解决高低端问题
- Spring MVC 全局异常处理(1) --SimpleMappingExceptionResolver
- pointer-events: none——CSS实现禁用鼠标点击事件!巧妙解决ExtJs表格单行禁用功能!
- esclipse的常用快捷键
- ubuntu 14.04 ssh server建立过程
- adb驱动警告需要数字签名的解决办法
- 防火墙规则,指定ip访问mysql数据库3306端口