mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)
一个项目中肯定会有多张数据表,而数据表之间会存在各种各样的关系。这时我们需要的数据,可能不会直接通过一张表全部获取到,这时就需要同时查询多张数据表,得到最后想要的数据。
下面以具体的实例来进行相关知识概念的梳理。
首先创建两张表并插入相关的数据:
1 create tableA(2 A_ID int primary keyauto_increment,3 A_NAME varchar(20) not null
4 );5 insert into A values(1,'苹果');6 insert into A values(2,'橘子');7 insert into A values(3,'香蕉');8
9 create tableB(10 A_ID int primary keyauto_increment,11 B_PRICE double
12 );13 insert into B values(1,2.30);14 insert into B values(2,3.50);15 insert into B values(4,null);
View Code
1.内连接查询:查询的结果为两表的公共部分
语法:
①select 列名1,列名2,......from table1,table2 where table1.列名 = table2.列名;
实例:查询出每个水果的价格 SELECT * FROM A,B WHERE A.A_ID=B.A_ID;
②select 列名1,列名2,.......from table1 inner join table2 on 条件
实例:查询出每个水果的价格 SELECT * FROM A INNER JOIN B ON A.A_ID=B.A_ID;
2.外链接查询:外链接查询分为左外连接,右外连接,全连接
1)左外连接:左表数据不动,右边表的数据往左表上去添加,不管是否找到,都将显示左边表中全部记录。
实例:查询出每个水果的价格(不管能否查到水果对应的价格,都要把水果显示出来)
SELECT * FROM A LEFT OUTER JOIN B ON A.A_ID=B.A_ID;
2)右外连接:用右边表去左边表查询对应记录,不管是否找到,右边表全部记录都将显示。
实例:查询每个水果的价格 SELECT * FROM A RIGHT OUTER JOIN B ON A.A_ID=B.A_ID;
3)全连接:左外连接和右外连接的结果合并,其实就是左外链接和右外连接之和,其中不去除重复的使用union all,去除重复的使用union;
①SELECT * FROM A LEFT OUTER JOIN B ON A.A_ID=B.A_ID
UNION ALL
SELECT * FROM A RIGHT OUTER JOIN B ON A.A_ID=B.A_ID;
②SELECT * FROM A LEFT OUTER JOIN B ON A.A_ID=B.A_ID
UNION
SELECT * FROM A RIGHT OUTER JOIN B ON A.A_ID=B.A_ID;
mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)相关推荐
- mysql怎么创建表视频教程_mySQL学习入门教程——2.创建表
二.创建表 一.创建数据表的SQL语句模型(弱类型) CREATE TABLE [IF NOT EXISTS] 表名称( 字段名1 列的类型[属性][索引], 字段名2 列的类型[属性][索引], - ...
- mysql行级安全_MySQL学习笔记(五):MySQL表级锁和行级锁
一:概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制.比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking ...
- mysql多表删除_MySQL中多表删除方法
如果您是才接触MySQL数据库的新人,那么MySQL中多表删除是您一定需要掌握的,下面就将为详细介绍MySQL中多表删除的方法,供您参考,希望对你学习掌握MySQL中多表删除能有所帮助. 1.从MyS ...
- mysql 不锁表备份_Mysql不锁表备份之Xtrabackup的备份与恢复
一.Xtrabackup介绍 MySQL冷备.热备.mysqldump都无法实现对数据库进行增量备份.如果数据量较大我们每天进行完整备份不仅耗时且影响性能.而Percona-Xtrabackup就是为 ...
- 怎么修改mysql的表名称_mysql怎么修改表名?
本篇文章将和大家讲述如何快速修改mysql表名,有同样需要的朋友学习一下吧,希望你看后能有所帮助. mysql修改表名的方法: 具体步骤:打开cmd->输入"mysql -u root ...
- mysql 多表联查_MySQL的多表联查
今天是周二,我们一起来研究下MySQL的多表联查啊.或许你也知道,表之间的关系有:1对1.1对多.多对多.然后...... 1. 嵌套查询:一个查询的结果是另外sql查询的条件 如:查询stu表中年龄 ...
- 如何用mysql创建股票数据库_mysql数据库创建表
Mysql错误代码大全 1016错误:文件无法打开,使用后台修复或者使用phpmyadmin进行修复. 1044错误:数据库用户权限不足,请联系空间商解决 1045错误:数据库服务器/数据库用户名/数 ...
- MySQL授权修改表结构_MySQL创建修改表结构
一.数据库的概述 1.什么是数据库 DB,DataBase 数据库:依照某种数据模型进行组织并存放到存储器的数据集合 DBMS,DataBase Management System 数据库管理系统:用 ...
- mysql inner join 效率_mysql的大小表前后顺序对inner join的效率有影响吗?
Aititi 集合连接 表格连接的join算法 attilax总结 艾提拉总结 常见的join算法 - CSDN博客.html Nexted-loop join中小表驱动大表的原因分析 原创 2017 ...
最新文章
- python requests 报错 Connection aborted ConnectionResetError RemoteDisconnected 解决方法
- Groovy的本地安装和Eclipse插件的配置
- Java包装类和基本数据类型的对照
- [js] 请使用js实现一个秒表计时器的程序
- python-访问者模式
- 正在锁定计算机 win7转圈圈打不开,Win7网络连接图标一直转圈的原因和解决方法...
- mongodb php 删除,MongoDB / PHP:从数组中删除元素
- WebView起步1
- 太沉重了:中国获全球“人道主义摄影奖”的照片!组图
- 诗与远方:无题(九十一)
- LeetCode题库7:反转整数——JavaScript解答
- Fibonacci in the Pocket 模拟
- 苹果修复老旧设备中的两个 iOS 0day
- MySQL必知必会(二)
- 阅读分布式锁文章总结
- [滑模控制器浅述] (1) 二阶系统的简单滑模控制器设计
- Java打印直角三角形
- python进行文本分类_python实现文本分类
- 永善县黄华镇大永高速通车了
- 截取某个字符串之前的字符
热门文章
- C# BackgroundWorker 的使用、封装
- 解决ubuntukylin 13.10安装wine时无法解决软件包依赖问题
- Spring DI[依赖注入]
- Apache Storm 官方文档 —— 源码组织结构
- SQL SERVER 2008清理日志
- [实战演练]腾讯2013年校招软件开发类笔试题目(选择题部分)
- 广播,多播(二)(Broadcasting, Multicasting)
- hdu 1227(二维dp)
- ThingsBoard 小结
- AUC、Precision、Recall、F-measure、Accuracy