当前位置: 代码迷 >> Sql Server >> 怎么面对复杂的报表语句.本人水平低 求解答
  详细解决方案

怎么面对复杂的报表语句.本人水平低 求解答

热度:27   发布时间:2016-04-24 10:01:50.0
如何面对复杂的报表语句......本人水平低 求解答?
select a.*,b.余欠款,b.操作人 from    --错误指向这里
(select  收货人姓名,COUNT(*),
SUM(CASE WHEN 货款>0  AND  开单日期>='2014-01-01' AND 开单日期<'2014-06-01' 
AND 目的地='武汉' and 始发地='古镇' then 货款 ELSE 0 END) as 五月及以前,
SUM(CASE WHEN 货款>0  AND  开单日期>='2014-06-01' AND 开单日期<'2014-07-01' 
AND 目的地='武汉' and 始发地='古镇' then 货款 ELSE 0 END ) as 六月,
SUM(CASE WHEN 货款>0  AND  开单日期>='2014-07-01' AND 开单日期<'2014-08-01' 
AND 目的地='武汉' and 始发地='古镇' then 货款 ELSE 0 END ) as 七月, 
SUM(CASE WHEN 货款>0  AND  开单日期>='2014-08-01' AND 开单日期<'2014-09-01' 
AND 目的地='武汉' and 始发地='古镇' then 货款 ELSE 0 END ) as 八月
from 运单表 group by 收货人姓名)as a,

(select 债务人,SUM(欠条金额-实收金额) as 余欠款,操作人 WHERE 有效=1 AND 已结清=0 ) as b
 
where a.收货人姓名=b.债务人 AND( a.五月及以前>0 OR a.六月>0  OR a.七月>0 OR a.八月>0)



服务器: 消息 8155,级别 16,状态 2,行 1
没有为第 2 列(属于 'a')指定列。



错哪了
------解决方案--------------------
count(*)没有as名称
------解决方案--------------------
第二行  count(*)  后面 加上  as [数量]
试一下
------解决方案--------------------
没有为a 查询中的count(*) 指定别名?
  相关解决方案