MySql数据库之连接查询

时间:2022-01-22 20:52:36

在MySql数据库中连接查询分为以下几种方式:

1.内连接查询

  内连接查询通过关键字 inner join 关键字来实现,通过代码实现:

select * from 表1 inner join 表2 on 表1.字段 = 表2.字段

  其原理是,将两个表中的数据通过指定的字段进行链接,然后将链接后的数据显示出来;

可以理解成取出两个表中的交集。

2.左链接查询

  左连接查询通过 left join 关键字来实现,代码实现:

select * from 表1 left join 表2 on 表1.字段 = 表2.字段

  其原理是,将左表作为数据基础通过指定字段链接,然后查找右表中的数据,如果右表数据存在则显示数据,如果右表中数据不存在则用NULL填充。

3.右链接查询

  右连接查询通过 right join 关键字来实现,代码实现:

select * from 表1 right join 表2 on 表1.字段 = 表2.字段

  其原理是,将右表作为数据基础通过指定字段链接,然后查找左表中的数据,如果左表数据存在则显示数据,如果左表中数据不存在则用NULL填充。

注意:左连接和右连接可以相互转换,将两个表的位置相互点到即可。

4.自链接查询

  自链接查询即自身链接查询,可以通过 inner join 关键字实现,代码实现:

select * from 表 as a inner join 表 as b on a.id = b.id

  自链接的原理是,就是把一张表模拟成左右两张表,然后进行连表查询。

可以理解为,通过起别名的方式将其看作是两张新表,通过内连接的方式进行链接查询数据。

其主要应用于一整张的地区表上,如:制作选择地区时的三级联动