MySQL数据操作与查询---连接查询

一、内连接:
   内连接基于连接请词,它将两张表(如 A和 B)的列组合在一起,产生新的结果表。具体过程是
   将 A表的每一行和 B 表的每一行进行比较,并找出满足连接谓词的组合,当连接谓词被满足,
   A和B中匹配的行会按列组合(并排组合)成结果集中的一行。
   内连接分 3 种:交叉连接、相等连接和自然连接。


交叉连接(笛卡尔职)
  通俗而言,笛卡尔积就是两个集合中的的每一个成员都与对方集合中的任意一个成员有关联。实    现表与表连接。

内连接的语法如下:
   SELECT *FROM table1 JOIN table2 ON table1.column1=table2.column2
 【where condition】
注意!
  连接依据的列可能包含 null 值。null 值不与任何值匹配(甚至和它本身)。
  自然连接
  语句:SELECT* from table1 NATURAL join table2(会把重复的列去掉)
  部分数据库是不支持自然连接(sql server)

二、多表连接查询
  语法:
SELECT fieldist FROM table1 JOIN table2 ON table1.column1=table2.column2_1 JOIN table3 on
table2.column2_2=table3.columg3【where condition】
说明:
table2与table1和table3 两两相连。些集双重的连接查询的方法的与三表连接查询的方法一样,均是通过两两相连的方式实现。

在内连接查询中,只有满足条件的记录才会出现在结果集中,但是在实际应用中,如果希望不
满足连接条件的记录也出现在结果中,使用外连接查询。


简单多表查询
语法(两表连接查询)
SELECT*FROM table1, table2
WHERE table1.column1=table2.column2【and 其他条件】
语法(使用三表连接查询语法格式如下:)
SELECT fieldlist FROM table1,table2,table3where table1.column1=table2.column2_1 and table2.column2_ 2=table3.column3 【and 其他条
件】

外连接查询
概念:
在内连接查调中,只有满足连接条件的记录才能出现在查询结果中。但在实际应用中,如果希望不
满足连接条件的记录也在查询结果中出现,这时需要使用外连接查询。
根据不同的外连接形式,外连接所生成的结果集中不仅包含符合条件的数据记录,还包会左表或石
表或左右表中所有的数据记录。


外连接的语法如下:
SELECT 字段名你 FROM 表名1 left RIGHT FULL JOIN 表名2 ON 表名1.字段名1=表名2.字段名
ON 表名 1.字段名 1=表名 2.字段名2


左外连接(LEFT JOIN)

左外连接的结果集包括左表的所有记录和右表中满足连接条件的记录,结果集中那些不符合连损条
件的来源子有表的列值为 null。
示例查询所有非空调车的车牌号、型号、线路号、起点站和终点站


分析:由于需要显示所有的非空调车,所以只能外连接。如果将车辆表 vehicle作为连接左表,线路表
line作为右表,则该连接为左外连接。具体的 SQL 语句如下:
select plateNo 车牌号,model 型号,lineNo 线路号,from_station 起点站,end_station 终点站
from vehicle V left join line L on V.lineID=L.lineID where type="非空调车”;

右外连接(RIGHT JOIN)
右外连接是左外连接的反向连接。右外连接的结果集包括右表的所有记录和左表中满足连接条件的
记录,结果集中那些不符合连接条件的来源于左表的列值为 null。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星、祭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值