计算同一日期多项服务的固定成本/天

AS91

T带有“计算成本”列的所需输出表

SvcID代码ID日期最小值单位成本
1 3000 15 4/4/2016 60 10 70
2 3000 17 4/4/2016 45 10 0
3 3000 15 5/2/2016 30 10 70
4 3000 18 5/2/2016 60 10 0
5 3000 10 5/2/2016 30 10 0
6 4200 16 2016年2月1日60 4 60
7 4200 9 2016年2月1日30 2 30

查询以计算和显示:

选择 
...
,案子
  当Code = 4200 THEN单位* 15时
  当Code = 3000时?
 END AS费用

 从 ...
 在哪里输入代码('3000','4200')
 通过...分组 ....;

与代码3000相同的日期提供的所有服务的总费用应为70,而与提供的服务数量无关。此代码的“分钟”和“单位”之间没有关系,无法计算成本。

一种方法是将任何一项服务的成本计算为70,并使同一日期的其余服务成本为0。CASE声明中可以这样做吗?

有什么更好的方法来实现这一目标?

亚历克斯

您需要调查Window函数MSDN

您的情况将变成这样:

-- New select statament
SELECT 
...
,CASE
  WHEN Code=4200 THEN Units*15
  WHEN Code=3000 THEN ( CASE WHEN DuplicateNum = 1 THEN 70 ELSE 0 END )?
 END AS Cost
FROM(
-- Your current query (with case statement removed) and ROW_NUMBER() function added
SELECT
..., ROW_NUMBER() OVER( PARTITION BY Code, Date ORDER BY ID ) AS DuplicateNum
 FROM ...
 WHERE Code IN ('3000','4200')
 GROUP BY ....
) AS YourCurrentQuery;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

计算同一日期多个服务的固定成本/天

来自分类Dev

仅计算同一日期excel的一个值

来自分类Dev

添加同一日期的值

来自分类Dev

熊猫根据同一日期合并行

来自分类Dev

同一日期只能选择时差

来自分类Dev

处理同一日期出现的值

来自分类Dev

NSPredicate用于检查同一日期

来自分类Dev

同一日期出现多少次

来自分类Dev

如何计算CoreData对象的唯一日期?

来自分类Dev

分别计算唯一日期的平均次数

来自分类Dev

计算与位置相关的唯一日期

来自分类Dev

SQL搜索日期字段中多少天将同一日期的倍数计数为仅一个

来自分类Dev

由同一用户MySQL在同一日期选择多个条目

来自分类Dev

在同一日期或最接近的日期(之前或之后)联接两个表

来自分类Dev

[SQL]从一行中选择同一日期

来自分类Dev

SQL-将同一日期的行连接在一起,并计算两者之间的时差

来自分类Dev

检查Java 8中“ Instant”的两个实例是否在同一日期

来自分类Dev

同一日期不同时间长

来自分类Dev

取共享同一日期的数据框元素的平均值

来自分类Dev

选择distinct(date)多次返回同一日期

来自分类Dev

Later.js-下个月的同一日期

来自分类Dev

在Go中检查两个时间对象是否在同一日期

来自分类Dev

将同一日期和ID的列中的值相加

来自分类Dev

SQL查询同一日期开始的多个用户

来自分类Dev

PHP和JS转换同一日期的方式有所不同

来自分类Dev

同一日期两个不同时间之间的值差

来自分类Dev

如何查询sql以获取同一日期的最新记录

来自分类Dev

我想查找MongoDB中同一日期的信息

来自分类Dev

MySQL和PHP:从同一日期选择所有字段