当前位置: 代码迷 >> Sql Server >> 求sql语句写法解决方法
  详细解决方案

求sql语句写法解决方法

热度:61   发布时间:2016-04-24 18:35:32.0
求sql语句写法
表1:

表2:

需要统计结果如下:

------解决方案--------------------

select a.Cu_CustomerName ,
       isnull(b.数量,0) as '数量'
from 表1 a left join
(
select Cu_CustomerNameID,count(*) as '数量' from 表2 group by Cu_CustomerNameID
)b on a.Cu_CustomerNameID=b.Cu_CustomerNameID 


------解决方案--------------------
SELECT Cus_CustomerName,(SELECT COUNT(1) FROM 表2 WHERE Cu_CustomerName=A.Cus_CustomerName ) 数量
FROM 表1 A

------解决方案--------------------
select a.Cus_CustomerName,COUNT(b.Cu_CustomerNameID) from a
left join b on a.Cus_ID=b.Cu_CustomerNameID
group by a.Cus_CustomerName

经测可用
不知道有其他写法不...
------解决方案--------------------

select a.Cus_CustomerName,
       isnull(b.qty,0) '数量'
 from 表1 a
 left join 
 (select Cu_CustomerNameID,count(1) 'qty'
  from 表2 
  group by Cu_CustomerNameID) b on a.Cus_ID=b.Cu_CustomerNameID

------解决方案--------------------


select a.Cu_CustomerName ,
       isnull(b.数量,0) as '数量'
from 表1 a 
OUTER APPLY 
(select count(*) as '数量' from 表2 WHERE Cu_CustomerNameID=a.Cu_CustomerNameID ) b 
  相关解决方案