mysql命令总结

119 阅读1分钟
mysql命令总结(4)


连接查询


内连接

select * from 表1 inner join 表2 on 表1.列= 表 2.列

左连接

select * from 表1 left join 表2 on 表1.列= 表 2.列

右连接(不常用)

select * from 表1 right join 表2 on 表1.列= 表 2.列



内连接:查询的结果为两个表匹配到的数据,一般使用别名来替代表1表2更为简洁可观
左连接:查询的结果为两个表匹配到的数据,左表特有的数据,右表不存在的数据
使用null填充
右连接:查询的结果为两个表匹配到的数据,右表特有的数据,左表不存在的数据

自关联:在一个数据表中的不同字段中有可关联的数据


select 别名1.* from 表名 as 别名1 inner join 表名 as 别名2 on 别名1.字段2=别名2.字段2
where 范围;

子查询:在一个select语句中嵌入了另外一个select语句,那么被嵌入的select 语句称之子查询语句


主查询:第一条select语句
子查询分类:

  • 标量子查询: 子查询返回的结果是一个数据(一行一列)


例如:select * from 表名 where 字段<(select avg(字段)from 表名);


  • 列子查询: 返回的结果是一列(一列多行)


例如:select * from 表名 where 字段 in (select 字段 from 表名);


  • 行子查询: 返回的结果是一行(一行多列)


例如:select * from 表名 where (字段1,字段2)=

(select max(字段1),max(字段2)from 表名);


Select 语句执行顺序


from 表名 》where …》group by … 》select distinct *》having …》order by …》limit m,n

更多学习资料可关注:itheimaGZ获取