mysql 多表查询内连接外连接
Posted weixin_ancenhw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 多表查询内连接外连接相关的知识,希望对你有一定的参考价值。
//多表查询,笛卡尔积:有testA、testB两个表集合。取testA、testB所有的组合情况
select * from testA,testB
//清除无效数据,通过where,内连接查询
select * from testA,testB where testA.id=test.id
//隐式内连接
select 字段列表 from 表1,表2,表3... where 条件;
//显示内连接
select 字段列表 from 表1 [INNER] join 表2 ON 条件;
//内连接相当于查询A、B交集数据
//外连接
---左外连接
select 字段列表 from 表1 left [outer] join 表2 on 条件
---右外连接
select 字段列表 from 表1 right [outer] join 表2 on 条件
子查询:
方式1单行单列
select 字段列表 from 表 where 字段名=(子查询)
方式2多行单列
select 字段列表 from 表 where 字段名in(子查询)
方式3多行多列
select 字段列表 from (子查询) where 条件;
//子查询(嵌套查询),分组查询并聚合,查询大于id数量
select * from testA id where count(id) > (select count(id) from testB where name='测试' group by name)
select * from testA id where count(id) in (select count(id) from testB where name='测试' group by name)
以上是关于mysql 多表查询内连接外连接的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 基础 -- 多表关系(一对一1对多(多对一)多对多)多表查询(内连接外连接自连接子查询(嵌套查询)联合查询 union)笛卡儿积