网站/小程序/APP个性化定制开发,二开,改版等服务,加扣:8582-36016

多表查询就是在一条查询语句中,从多张表里一起取出所需的数据,如果要想进行多表查询,下面这篇文章主要给大家介绍了关于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注入。


评论 0

暂无评论
0
0
0
立即
投稿
发表
评论
返回
顶部