我正在使用SQL Server 2005.我期待添加列(AM,Midday,Evening)以查看哪些包含值“YES”,然后采用总数乘以客户端每行的费率。SQL Server - 需要sum和case语句的帮助
下面是该查询我到目前为止:
Select
Sum(Case When morning = 'yes' Then 1 Else 0 End) am_total,
Sum(Case When midday = 'yes' Then 1 Else 0 End) midday_total
From services
where client_id = 24
与下面的输出
am_total midday_total
45 49
当我介绍率可变,我的查询开始告诉我,我需要的GROUP_BY条款和我不要以为我已经准备好了,因为我仍然需要先将am_total和midday_total加在一起,然后再乘以该值。
最终,我要找的就是总数。
“rate”是该表的一列还是来自别处? (我不确定我是否理解你的问题,因为你说“乘以每个客户的每一行的费率__,然后你说你需要首先总数,然后乘以这个比率。) – Mat
你为什么需要评分?那个变量代表什么,它是表属性还是声明变量? –
客户端可以在数据库中有多行。费率是每行唯一的动态变量。我需要为每行获取总数,然后将所有行添加到一起以获得客户端的总数。 – user721381