在没有某些值的条目的情况下,如何显示总和0?

小鹿斑比

我需要选择每周报告(每种任务类型每周的收入)。对于某些星期没有任何任务类型条目的项目,我想将0打印为收入,但这些组不会出现在我的选择中。#weeks是临时表,其中包含我要报告的所有星期。我应该在查询中修改什么?

SELECT weeks.BeginDate, weeks.EndDate, task.TaskId, task.Abbreviation, task.Name, COALESCE(SUM([entry.Income]), 0) AS IncomePerWeek 
FROM Task task 
LEFT JOIN Entry entry
ON task.TaskId = entry.TaskId 
INNER JOIN #weeks weeks 
ON entry.EntryDate BETWEEN weeks.BeginDate 
AND weeks.EndDate
GROUP BY weeks.BeginDate, weeks.EndDate, task.TaskId, task.Abbreviation, task.Name
ORDER BY weeks.BeginDate, task.Abbreviation

所以我希望结果看起来像这样:

BeginDate    EndDate    TaskId    Abbreviation    Name    IncomePerWeek
----------------------------------------------------------------------
09/11/2015   15/11/2015  1        FT              First   15
09/11/2015   15/11/2015  2        ST              Second  0
...

因此,在2015年9月11日-2015年11月15日的表Entry中没有包含TaskId 2的任何条目,但是我仍然想获取该周的行以及IncomePerWeek = 0的任务。

射频

以下作品:

SELECT WT.BeginDate, WT.EndDate, WT.TaskId, WT.Abbreviation, WT.Name, SUM(COALESCE(entries.Income, 0)) AS IncomePerWeek 
    FROM Entry AS entries 
        RIGHT JOIN (
            SELECT weeks.BeginDate, weeks.EndDate, tasks.TaskId, tasks.Abbreviation, tasks.Name
                FROM Task AS tasks, #weeks AS weeks                     
        ) AS WT ON (entries.EntryDate BETWEEN WT.BeginDate AND WT.EndDate) AND WT.TaskId = entries.TaskId 
    GROUP BY WT.BeginDate, WT.EndDate, WT.TaskId, WT.Abbreviation, WT.Name
    ORDER BY WT.BeginDate, WT.Abbreviation

要点”是创建与基数*任务子查询笛卡尔积和with 一样多的条目WTRIGHT JOINentries

然后,IncomePerWeek通过COALESCEonNULL对条目的不存在进行正确处理以进行计算

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在/ dev中没有条目的情况下访问USB串行端口?

来自分类Dev

如何使用BigQuery在没有每个元素的情况下获取所有总和值?

来自分类Dev

在/ etc / services中没有条目的情况下连接到Informix(匹配sqlhosts)

来自分类Dev

如何在PHP中没有数据库的情况下显示多组值?

来自分类Dev

如何在没有科学计数法的情况下显示整个字段值?

来自分类Dev

如何在没有 .0 的情况下打印双精度值

来自分类Dev

如何在as3中没有受影响的界面项目的情况下全屏显示视频?

来自分类Dev

如何在MySQL中没有孩子的情况下选择所有条目

来自分类Dev

在没有循环的情况下计算 R 中的总和

来自分类Dev

在没有项目的情况下执行Maven目标

来自分类Dev

如何在没有foreach的情况下使用基因剔除显示选定复选框的值?

来自分类Dev

未插入值时如何在没有自定义管道过滤的情况下显示整个表

来自分类Dev

如何在没有其他OpenStack项目的情况下配置OpenStack Swift?

来自分类Dev

如何在没有Visual Studio项目的情况下更新内部企业网页?

来自分类Dev

如何在没有项目的情况下编译C#文件?

来自分类Dev

如何在没有输入掩码的情况下使用允许.5或.0的数字来验证子数字值?

来自分类Dev

在没有某些div的情况下淡入背景

来自分类Dev

SpriteNode在某些情况下没有出现

来自分类Dev

在没有某些“功能”的情况下使用OpenShift

来自分类Dev

如何在没有其他程序的情况下阻止对某些网站的访问?

来自分类Dev

默认情况下如何在没有任何鼠标事件的情况下显示标记内容?

来自分类Dev

在没有/ dev / fb0的情况下将图形显示在屏幕上

来自分类Dev

在没有提交按钮的情况下提交和显示复选框值

来自分类Dev

在R数据帧中没有值的情况下输入0

来自分类Dev

在不存在条目的情况下,SQL Server返回NULL(或值)-多列

来自分类Dev

SQL - 如何在没有数据透视的情况下仅将某些行值转置为列标题

来自分类Dev

如何在没有克隆的情况下更改对拥有值的引用?

来自分类Dev

在没有背景的情况下显示png图像

来自分类Dev

在没有显示的情况下测试 wxPython 小部件

Related 相关文章

  1. 1

    如何在/ dev中没有条目的情况下访问USB串行端口?

  2. 2

    如何使用BigQuery在没有每个元素的情况下获取所有总和值?

  3. 3

    在/ etc / services中没有条目的情况下连接到Informix(匹配sqlhosts)

  4. 4

    如何在PHP中没有数据库的情况下显示多组值?

  5. 5

    如何在没有科学计数法的情况下显示整个字段值?

  6. 6

    如何在没有 .0 的情况下打印双精度值

  7. 7

    如何在as3中没有受影响的界面项目的情况下全屏显示视频?

  8. 8

    如何在MySQL中没有孩子的情况下选择所有条目

  9. 9

    在没有循环的情况下计算 R 中的总和

  10. 10

    在没有项目的情况下执行Maven目标

  11. 11

    如何在没有foreach的情况下使用基因剔除显示选定复选框的值?

  12. 12

    未插入值时如何在没有自定义管道过滤的情况下显示整个表

  13. 13

    如何在没有其他OpenStack项目的情况下配置OpenStack Swift?

  14. 14

    如何在没有Visual Studio项目的情况下更新内部企业网页?

  15. 15

    如何在没有项目的情况下编译C#文件?

  16. 16

    如何在没有输入掩码的情况下使用允许.5或.0的数字来验证子数字值?

  17. 17

    在没有某些div的情况下淡入背景

  18. 18

    SpriteNode在某些情况下没有出现

  19. 19

    在没有某些“功能”的情况下使用OpenShift

  20. 20

    如何在没有其他程序的情况下阻止对某些网站的访问?

  21. 21

    默认情况下如何在没有任何鼠标事件的情况下显示标记内容?

  22. 22

    在没有/ dev / fb0的情况下将图形显示在屏幕上

  23. 23

    在没有提交按钮的情况下提交和显示复选框值

  24. 24

    在R数据帧中没有值的情况下输入0

  25. 25

    在不存在条目的情况下,SQL Server返回NULL(或值)-多列

  26. 26

    SQL - 如何在没有数据透视的情况下仅将某些行值转置为列标题

  27. 27

    如何在没有克隆的情况下更改对拥有值的引用?

  28. 28

    在没有背景的情况下显示png图像

  29. 29

    在没有显示的情况下测试 wxPython 小部件

热门标签

归档