正确求和没有别名的值

杰夫_S

我有一个查询可以正确返回所有内容,除了我的总列(总和)中的一个略有不一致之外,我无法弄清楚为什么会发生这种情况或有更好的方法来处理它。

这是有问题的查询部分:

SELECT 
 c.extension 
,RESPONSIBLEUSEREXTENSIONID 
 , sum(Duration)  -- seconds
, round(sum(Duration) / 60,2) -- minutes
, sum(if(LEGTYPE1 = 1,1,0))  -- outbound
, sum(if(LEGTYPE1 = 2,1,0) and ANSWERED = 1) -- inbound
, sum(if(Answered = 1,0,1))  -- missed
, count(if(LEGTYPE1 = 1,1,0)) + count(if(LEGTYPE1 = 2,1,0))   -- as total_calls 
, now()
, b.ts 
FROM cdrdb.session a
INNER JOIN cdrdb.callsummary b
   ON a.NOTABLECALLID = b.NOTABLECALLID
INNER join cdrdb.mxuser c
   ON a.RESPONSIBLEUSEREXTENSIONID = c.EXTENSIONID
   WHERE b.ts BETWEEN curdate() - interval 30 day and curdate()
AND c.extension IN (7276,7314,7295,7306,7357,7200,7218,7247,7331,7255,7330,7000,7215,7240,7358,7312)
group by DATE(b.ts),c.extension;

这是前几个结果:

在此处输入图片说明

总呼叫列应添加呼入、呼出和未接电话。可以看到,大多数时候,总数是正确的,但尤其是第一行和第三行,它是关闭的。如果我给公式AS别名并尝试对别名求和,它会说该列不存在。

是否有我遗漏的东西导致不一致,更重要的是,有没有更直接的方法可以对这 3 列/值求和?

蒂姆·比格莱森

您将总呼叫数定义为呼入、呼出和未接呼叫的总和,但在您的查询中您只包含以下 3 个术语中的 2 个:

count(if(LEGTYPE1 = 1,1,0)) + count(if(LEGTYPE1 = 2,1,0))

此外,使用COUNT那里可能不是您想要的。这只会计算记录数,假设所有值都不是NULL相反,只需使用SUM以下方法对三种类型的呼叫总和进行求和

在计算总调用次数时使用SUM,而不是COUNT

SUM(IF(LEGTYPE1 = 1, 1, 0)) +                   -- outbound
SUM(IF(LEGTYPE1 = 2, 1, 0) AND ANSWERED = 1) +  -- inbound
SUM(IF(Answered = 1, 0, 1)) AS total_calls      -- missed 

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

添加具有别名值的条件

来自分类Dev

C getopt_long_only没有别名

来自分类Dev

如何找到名称已更改的服务;没有别名

来自分类Dev

从现有别名创建别名

来自分类Dev

GitHub附带的Git版本是否没有别名功能?

来自分类Dev

是否可以使用MirrorMaker2复制没有别名前缀的kafka主题

来自分类Dev

告诉C ++编译器该参数没有别名

来自分类Dev

Discord.js-当命令没有别名时,帮助命令将返回“ undefined”

来自分类Dev

NHibernate哪里有别名限制

来自分类Dev

GROUP BY子句是否具有别名?

来自分类Dev

带有别名的MySQL Concat(Length)

来自分类Dev

带有别名的字典子集

来自分类Dev

具有别名构造函数的std :: shared_ptr,是否有可能检索初始指针值?

来自分类Dev

具有别名表名称的ActiveRecord查询

来自分类Dev

在程序中关闭具有别名的文件

来自分类Dev

使用mysql在postfix中配置所有别名

来自分类Dev

mysql union全部带有别名,语法错误

来自分类Dev

(对MySQL的MSaccess)具有别名的FROM子查询

来自分类Dev

C-具有别名的功能吗?

来自分类Dev

如何对带有别名的列使用GROUP BY?

来自分类Dev

带有别名的Rails查询联接关联表

来自分类Dev

Bash:在脚本中输出所有别名和函数

来自分类Dev

具有别名的Apache反向代理,权限被拒绝

来自分类Dev

具有别名的ng-repeat无法正常工作

来自分类Dev

PowerShell-与现有别名的&string冲突

来自分类Dev

带有别名的联接中的Laravel Eloquent子查询

来自分类Dev

删除所有别名的便捷方法是什么?

来自分类Dev

Laravel 4.2:具有别名的Routig控制器?

来自分类Dev

在 Typescript/Javascript 中导出带有别名的元素

Related 相关文章

热门标签

归档