当前位置: 代码迷 >> Sql Server >> 初学sql的有关问题
  详细解决方案

初学sql的有关问题

热度:89   发布时间:2016-04-27 13:23:00.0
初学sql的问题
表A有字段(编号,名称),表B有字段(编号,功能描述,分类,名称),表B中的名称为空,请问如何通过sql语句更新表B中的“名称”字段内容并满足A.编号=B.编号,A.名称=B.名称,如

表A
编号 名称
1 跑步机
2 篮球


表B
编号 功能描述 分类 名称
2 健身 球类  
1 健身 器材 

得出的结果为
表B
编号 功能描述 分类 名称
2 健身 球类 篮球  
1 健身 器材 跑步机
 请问这条sql语句如何写?

------解决方案--------------------
select b.*.a.名称 from b join a on a.编号=b.编号
------解决方案--------------------
select b.*.a.名称 from b join a on a.编号=b.编号
------解决方案--------------------
--A.名称=B.名称這條件去掉
SQL code
select b.*,a.名称 from B,A where b.编号=a.编号
------解决方案--------------------
SQL code
create table a(    id int,    [name] varchar(30))insert into aselect 1,'跑步机' union allselect 2,'足球'create table b(    id int,    dec varchar(200),    [type] varchar(30),    [name] varchar(30))insert into b(id,dec,type)select 2,'健身','球类'union allselect 1,'健身','器材'select * from aselect * from bselect STUFF((select ','+name from a a_2 where a_2.id=a.id for xml path('')),1,1,'') as [name] from a group by idupdate b set[name]=(select a.name from a where a.id=b.id)from a where b.id=a.iddrop table adrop table b
  相关解决方案