您的位置:首页 > 数据库 > MySQL

mysql高级查询

2016-04-23 19:43 417 查看
高级查询:

1.连接查询

select * from Info,Nation #得出的结果称为笛卡尔积
select * from Info,Nation where Info.Nation = Nation.Code

join on连接

select * from Info join Nation #join连接
select * from Info join Nation on Info.Nation = Nation.Code

2.联合查询

select Code,Name from Info
union
select Code,Name from Nation

3.子查询

1)无关子查询

select Code from Nation where Name = '汉族' #去Nation表中查询汉族的民族代号

select * from Info where Nation = (民族代号) #在Info表中查询民族代号为上一个查询结果的所有信息

select * from Info where Nation = (select Code from Nation where Name = '汉族')

子查询查询的结果被父查询使用,子查询可以单独执行的成为无关子查询

2)相关子查询

select * from Car where Oil<(该系列的平均油耗) #查询油耗小于该系列平均油耗的

select avg(Oil) from Car where Brand = "值" #查询某系列的平均油耗

select * from Car a where Oil<(select avg(Oil) from Car b where b.Brand = a.Brand)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: