首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求教sql连表查询解决方法

2013-09-06 
求教sql连表查询表A:k_dkdajlhdkje----------- -------699714DC123.00表B:k_dkdajlh hkje--------- ------

求教sql连表查询
表A:
k_dkdajlh   dkje
----------- -------
699714DC    123.00
表B:
k_dkdajlh hkje
--------- ---------------------
699714DC  3000.00
699714DC  2000.00

我想查询返回 dkje 和 sum(hkje) 两个字段 只返回一行
我用left join 总是返回两行
select A.dkje, sum(B.hkje)
from A left join B
on A.k_dkdajlh=B.k_dkdajlh 
where A.k_dkdajlh='699714DC' 
group by A.dkje,B.hkje
[解决办法]



declare @k_dkdajlh nvarchar(100)
set @k_dkdajlh='699714DC'

with cte as(
select k_dkdajlh,sum(hkje) as hkje
from B
group by k_dkdajlh
)
select A.dkje,B.hkje from A join cte B on A.k_dkdajlh=B.k_dkdajlh 
where  A.k_dkdajlh= @k_dkdajlh

热点排行