中核工建设集团OA网站,宁波住房和城乡建设局网站首页,wordpress wdcp,哪个网站生鲜配送做的好处目录
1 简介
2 内连接查询
2.1 内连接语法
2.2 内连接练习
3 外连接查询
3.1 外连接语法
3.2 外连接练习
4 总结 1 简介
连接的本质就是把各个表中的记录都取出来依次匹配的组合加入结果集并返回给用户。我们把 t1 和 t2 两个表连接起来的过程如下图所示#xff1a; …目录
1 简介
2 内连接查询
2.1 内连接语法
2.2 内连接练习
3 外连接查询
3.1 外连接语法
3.2 外连接练习
4 总结 1 简介
连接的本质就是把各个表中的记录都取出来依次匹配的组合加入结果集并返回给用户。我们把 t1 和 t2 两个表连接起来的过程如下图所示 在 MySQL 中多表查询分为连接查询和子查询而连接查询又分为内连接查询和外连接查询外连接查询的方式有左外连接查询和右外连接查询。
2 内连接查询
2.1 内连接语法
内连接查询分为隐式内连接查询和显式内连接查询表示查询 A 集合和 B 集合的交集。 语法
-- 隐式内连接查询
SELECT 字段列表 FROM 表1,表2… WHERE 条件;
-- 显示内连接查询
SELECT 字段列表 FROM 表1 [INNER] JOIN 表2 ON 条件;2.2 内连接练习
练习一查询每名同学的姓名、成绩
student 表
---------------------------------
| s_id | s_name | s_birth | s_sex |
---------------------------------
| 01 | 赵雷 | 1990-01-01 | 男 |
| 02 | 钱电 | 1990-12-21 | 男 |
| 03 | 孙风 | 1990-05-20 | 男 |
| 04 | 李云 | 1990-08-06 | 男 |
| 05 | 周梅 | 1991-12-01 | 女 |
| 06 | 吴兰 | 1992-03-01 | 女 |
| 07 | 郑竹 | 1989-07-01 | 女 |
| 08 | 王菊 | 1990-01-20 | 女 |
---------------------------------score 表
---------------------
| s_id | c_id | s_score |
---------------------
| 01 | 01 | 80 |
| 01 | 02 | 90 |
| 01 | 03 | 99 |
| 02 | 01 | 70 |
| 02 | 02 | 60 |
| 02 | 03 | 80 |
| 03 | 01 | 80 |
| 03 | 02 | 80 |
| 03 | 03 | 80 |
| 04 | 01 | 50 |
| 04 | 02 | 30 |
| 04 | 03 | 20 |
| 05 | 01 | 76 |
| 05 | 02 | 87 |
| 06 | 01 | 31 |
| 06 | 03 | 34 |
| 07 | 02 | 89 |
| 07 | 03 | 98 |
---------------------Course 表
--------------------
| c_id | c_name | t_id |
--------------------
| 01 | 语文 | 02 |
| 02 | 数学 | 01 |
| 03 | 英语 | 03 |
--------------------编写一个 SQL 查询 学生姓名、课程名、成绩
mysql SELECT- t2.s_name,- t3.c_name,- t1.s_score- FROM- score t1- JOIN student t2 ON t1.s_id t2.s_id- JOIN Course t3 ON t1.c_id t3.c_id;-------------------------
| s_name | c_name | s_score |
-------------------------
| 赵雷 | 语文 | 80 |
| 赵雷 | 数学 | 90 |
| 赵雷 | 英语 | 99 |
| 钱电 | 语文 | 70 |
| 钱电 | 数学 | 60 |
| 钱电 | 英语 | 80 |
| 孙风 | 语文 | 80 |
| 孙风 | 数学 | 80 |
| 孙风 | 英语 | 80 |
| 李云 | 语文 | 50 |
| 李云 | 数学 | 30 |
| 李云 | 英语 | 20 |
| 周梅 | 语文 | 76 |
| 周梅 | 数学 | 87 |
| 吴兰 | 语文 | 31 |
| 吴兰 | 英语 | 34 |
| 郑竹 | 数学 | 89 |
| 郑竹 | 英语 | 98 |
-------------------------3 外连接查询
3.1 外连接语法
外连接查询分为左外连接查询和右外连接查询。 左外连接查询相当于查询 A 表所有数据和交集部分数据。 右外连接查询相当于查询 B 表所有数据和交集部分数据。 语法
-- 左外连接
SELECT 字段列表 FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件;
-- 右外连接
SELECT 字段列表 FROM 表1 RIGHT [OUTER] JOIN 表2 ON 条件;3.2 外连接练习
练习一连续出现的数字
表Logs
----------------------
| Column Name | Type |
----------------------
| id | int |
| num | varchar |
----------------------
在 SQL 中id 是该表的主键。
id 是一个自增列。找出所有至少连续出现三次的数字。
返回的结果表中的数据可以按 任意顺序 排列。
结果格式如下面的例子所示示例 1:
输入
Logs 表
---------
| id | num |
---------
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 1 |
| 6 | 2 |
| 7 | 2 |
---------
输出
Result 表
-----------------
| ConsecutiveNums |
-----------------
| 1 |
-----------------
解释1 是唯一连续出现至少三次的数字。找出所有至少连续出现三次的数字
select distinct t1.num as ConsecutiveNums
fromLogs t1
leftjoinlogs t2 on t1.num t2.num and t1.id t2.id-1
leftjoinlogs t3 on t1.num t3.num and t2.id t3.id-1
where t3.num isnotnull;4 总结
本文介绍了MySQL中的连接查询包括内连接和外连接的使用方法。内连接查询用于获取两个表中交集部分的数据分为隐式内连接和显式内连接两种方式。通过内连接我们可以实现多表联合查询如查询学生的姓名、课程名称和成绩。外连接查询分为左外连接和右外连接左外连接返回左表的所有数据和右表匹配的数据而右外连接则返回右表的所有数据和左表匹配的数据。通过外连接我们能够处理一些不完全匹配的数据比如查找连续出现至少三次的数字。通过本文的练习读者可以掌握多表查询的基本技巧并理解连接查询的实际应用。