SQL语句如何实现超简单的多表查询
我是陈晓 · 274浏览 · 发布于2022-05-23
多表查询就是在一条查询语句中,从多张表里一起取出所需的数据,如果要想进行多表查询,下面这篇文章主要给大家介绍了关于SQL语句如何实现超简单的多表查询的相关资料,需要的朋友可以参考下
一、简单的多表联查(inner join,left join,right join)
1、 两表联查
user_table表
department表
1、inner join代表内连接,数据显示内容以外键为准,意思就是外键没有的,数据就不显示。
select user_table.id,user_table.username,user_table.sex,user_table.phone,user_table.address,department.dname from user_table inner join department on user_table.departmentid=department.did;
查询结果如下:
2、left join代表左连接,数据显示内容以左边表为准,意思就是不管右边表查出来是否有数据,左边表的数据有的一定会显示。
select user_table.id,user_table.username,user_table.sex,user_table.phone,user_table.address,department.dname from user_table left join department on user_table.departmentid=department.did;
3、right join代表右连接,数据显示内容以右边表为准,意思就是不管左边表查出来是否有数据,右边表的数据有的一定会显示。
select user_table.id,user_table.username,user_table.sex,user_table.phone,user_table.address,department.dname from user_table right join department on user_table.departmentid=department.did;
2、三表联查
只需要在sql语句后面继续加上inner join即可,当然这是以内连接为主。如下:
work表
department表后面添加work表的主键作为关联的外键
select user_table.id,user_table.username,user_table.sex,user_table.phone,user_table.address,department.dname,work.worktext from user_table inner join department on user_table.departmentid=department.did inner join work on work.workid=department.workid;
二、触发器
触发器就是当对某个表执行某个操作的时候触发,可以有效防止恶意的sql注入。
相关推荐
使用SELECT语句检索数据
奔跑的男人 · 806浏览 · 2019-06-03 09:33:43
部署MySQL延迟从库的几个好处
吴振华 · 666浏览 · 2019-05-14 21:57:51
MongoDB凭什么跻身数据库排行前五?
iamitnan · 723浏览 · 2019-06-18 10:04:56
一个快速上手、轻量级 Golang 公共类库 (golang_common)
qq2360248666 · 896浏览 · 2019-05-29 09:48:45
详解基于linux环境MySQL搭建与卸载
追忆似水年华 · 872浏览 · 2019-05-27 09:54:23
Oracle开启和关闭的几种模式
qq2360248666 · 752浏览 · 2019-06-04 10:18:47
最新发布
最热排行
0评论