sql语句的联合查询(join 用法)

来源:互联网 发布:淘宝v4是什么等级 编辑:程序博客网 时间:2024/05/17 08:39

student
no,name,classid,
1, zdy,2,
2,huz,2,
3,yxx,2,
4,sss,1,

class
classid,classname,
2,y2002,
3,y2003,

1 .select *  from student , class where student.classid=class.classid
no,name,classid,classid,classname,
1,zdy,2,2,y2002,
2,huz,2,2,y2002,
3,yxx,2,2,y2002,

2.select *  from student left join class on student.classid=class.classid
no,name,classid,classid,classname,
1,zdy,2,2,y2002,
2,huz,2,2,y2002,
3,yxx,2,2,y2002,
4,sss,1, ,  ,

3.select *  from student inner join class on student.classid=class.classid
no,name,classid,classid,classname,
1,zdy,2,2,y2002,
2,huz,2,2,y2002,
3,yxx,2,2,y2002,
结果同1

4.select *  from student right join class on student.classid=class.classid
no,name,classid,classid,classname,
1,zdy,2,2,y2002,
2,huz,2,2,y2002,
3,yxx,2,2,y2002,
  ,    ,  , 3,y2003,


【T_Productor】
cityId  产品名  产量
  1     冰箱     100
  1     热水器   200
  2     电视机   50
  2     洗衣机   100
【T_City】
id    名称
1     北京
2     南京

用一条SQL语句求出一下结果
城市名    产量
 北京     300
 南京     150

写了3个方法:

select T_City.名称,A.产量 from T_City join (select sum(产量) as 产量,cityId from T_Productor group by cityid) as A on A.cityId=T_City.id

select T_City.名称,产量=sum(T_Productor.产量) from T_Productor join T_City on T_Productor.cityid=T_City.id group by T_City.名称

select T_City.名称,产量=sum(T_Productor.产量) from T_Productor,T_City where T_Productor.cityid=T_City.id group by T_City.名称


原创粉丝点击