mysql查询3个表_mysql如何实现多表查询,三个数据表的联合查询?

在mysql查询语句中,为了实现查询到某些信息,我们会用到多表的联合查询。那么如何去实现三表的联合查询呢?下面我给大家举一个例子,现在 我这里有三个表,一个是文件表wenjian,一个是管理角色表admin_group,还有一个表是分类表sort表,这几个表中,文件表与管理角色表有一个共同的字段就是group_id,管理角色表与分类表用一个共同的字段sort_id。

下面我们就来实现三个表的联合查询,查询出文件的所有信息的所有信息:

select * from wenjian,admin_group,sort where wenjian.group_id=admin_group_id and admin_group.sort_id=sort.sort_id order by wenjian.wenjian_id DESC;(这里我们把文件表作为主表来查询)

如果我们只是想要文件表中的所有信息,其他两个表中的部分信息,那么我们可以把sql与剧中的 * 替换为wenjian.*,admin_group.group_name,sort.sort_name

如果要实现两个表的联合查询,我们就要用到left join on了,这次我们要查询文件表里面的所有信息与分类表的分类名,查询语句如下:

select w.*,sort.sort_name from wenjian as w left join sort as s on w.sort_id=s.sort_id order by w.wenjian_id dese

你可能感兴趣的:(mysql查询3个表)