MySQL中三表联查实战(mysql三表查询)
MySQL中三表联查是在MySQL中一种技术,它的作用就是从另外两张表中获取数据,并与本表的信息进行联合,查询出满足条件的结果。它在分析大型数据库时非常有用。下面我们就通过一个实战案例来体验这种技术。
首先,我们假设有一个学生表student,其中包含学生的id,name和class_id。
~~~
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 主键id ,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 姓名 ,
`class_id` int(11) NOT NULL COMMENT 班级id ,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
~~~
接下来,我们有两个表,一个是班级表class,一个是学校表school,分别保存班级和学校的信息。
~~~
CREATE TABLE `class` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 主键id ,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 班级名字 ,
`school_id` int(11) NOT NULL COMMENT 学校id ,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
CREATE TABLE `school` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 主键id ,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 校名 ,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
~~~
接下来,就可以通过MySQL中的三表联查查询学生所在学校的名称,代码如下:
~~~
SELECT student.name, school.name
FROM student, class, school
WHERE student.class_id = class.id
AND class.school_id = school.id;
~~~
查询结果如下,是一个表格:
| name | school.name |
| | |
| 小明 | 清华 |
| 小红 | 北大 |
| 小张 | 北航 |
总之,利用MySQL结合三表联查,可以方便快捷地把多张表联接起来,查找出所需的信息,在大型数据的分析中,非常有用。
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 MySQL中三表联查实战(mysql三表查询)
相关文章
- MySQL联表查询:轻松搞定复杂SQL语句(mysql联表查询语句)
- MySQL中空值的查询处理(mysql查询为空)
- MySQL查询功能:学会使用SQL语句(mysql查询sql语句)
- 写敏感MySQL大小写敏感:知晓更安全(mysql大小)
- MySQL查询:最值得注意的技巧(mysql查询最多的)
- MySQL字符串聚合,为你打造高效查询。(mysql字符串聚合)
- MySQL:如何为表添加主键?(mysql给表添加主键)
- 灵活编排MySQL过程变量(mysql过程变量)
- MySQL 优化:掌握并行查询的力量(mysql并行查询)
- MySQL数据库中的Myd文件了解它的作用及操作方法(mysql中.myd文件)
- MySQL两表差异查询与比较(mysql 两表差异)
- 解决CD无法启动MySQL的问题(cd无法启动mysql)
- MySQL的一对多视图,如何应用(mysql 一对多视图)
- 如何高效地下载MySQL分享一些实用的思路(mysql下载思路)
- 如何利用MySQL进行数据管理和查询(mysql下好后怎么做)
- MySQL上机练习题提升数据库操作实战能力(mysql上机练习题)
- MySQL查询优化使用WITH子句的限制与替代方案(mysql不能用with)
- MySQL神器,不行不行,不能等于2啊如何使用MySQL进行不等于2的操作(mysql 不等于2)
- MySQL如何不查询特定字段(mysql 不查某个字段)
- MySQL 数据库查询非顺序匹配的方法与技巧(mysql不按顺序匹配)