根据存储过程传递到临时表中的月份数,将日期分为月份和年份

卡尔提克·杜蒂(Karthik Dooty)

我有一个存储过程,其中将数字数量作为参数。我用这样的where子句查询

select salesrepid, month(salesdate), year(salesdate), salespercentage 
from SalesRecords
where salesdate >= DATEADD(month, -@NumberOfMonths, getdate())

因此,例如,如果@NumberOFmonths通过= 3并基于今天的日期,

它应该在我的结果集中显示9月9日,10月10日和11月11日。我的查询带来了它,但是请求是我需要为那些没有一个月的值的salesrep返回null,

例如:

salerepid     month      year     salespercentage
 232          9         2020       80%
 232          10        2020       null
 232          11        2020       90%

我怎样才能做到这一点?现在查询只带回两个记录,并且不带10月数据,因为那里没有值,但是我希望它返回具有空值的10月。

专线小巴

如果我正确地遵循了您的规定,您可以在目标间隔内生成所有月份的开始时间,并cross join可以通过表格生成所有可能的月份然后,您可以在桌子上摆一个left join

with all_dates as (
    select datefromparts(year(getdate()), month(getdate()), 1) salesdate, 0 lvl
    union all
    select dateadd(month, - lvl - 1, salesdate), lvl + 1
    from all_dates 
    where lvl < @NumberOfMonths
)
select r.salesrepid, d.salesdate , s.salespercentage
from all_dates d
cross join (select distinct salesrepid from salesrecords) r
left join salesrecord s
    on  s.salesrepid = r.salesrepid
    and s.salesdate >= d.salesdate 
    and s.salesdate <  dateadd(month, 1, d.salesdate )

您的原始查询和结果暗示每个销售代表和每个月最多有一条记录,因此在相同的假设下也可以使用。如果不是这种情况(从某种意义上讲更有意义),则需要在外部查询中进行聚合。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据整数变量从临时表中选择TOP月份和年份数字

来自分类Dev

将存储过程结果集分离到临时表中

来自分类Dev

当在SQL Server中给出结束日期和月份数差异时,查找存储过程以查找月份的第一天

来自分类Dev

更改文件的年份,保留月份中的月份和日期

来自分类Dev

更改文件的年份,保留月份中的月份和日期

来自分类Dev

Javascript或jQuery中的日期,月份和年份

来自分类Dev

如何在excel中交换日期和月份数字

来自分类Dev

获取存储过程的refcursor输出并插入到临时表中

来自分类Dev

从日期获取月份和年份

来自分类Dev

验证日期月份和年份

来自分类Dev

将日期的月份和年份与日期行匹配

来自分类Dev

根据熊猫中的特定年份和月份从多个日期列中过滤行

来自分类Dev

将月份和日期列转换为R中的相应数字,并将表划分为2个矩阵

来自分类Dev

从Javascript“日期”表格中解析日期,月份和年份

来自分类Dev

将存储过程结果集插入到临时表并查询临时表

来自分类Dev

SQL将月份和年份转换为日期格式

来自分类Dev

将月份和年份更新为当前但离开日期

来自分类Dev

在“数据表日期”列中显示月份名称和年份

来自分类Dev

制作在VHDL中显示月份数和月份的日历?

来自分类Dev

如何根据年末将月份和年份放入数据库中

来自分类Dev

如何将x轴上的日期格式化为R中的月份和年份

来自分类Dev

仅将两个日期与 PHP 中的月份和年份进行比较

来自分类Dev

如何在网址中传递月份和年份

来自分类Dev

如何在UIDatePicker中禁用将来的日期,月份和年份?

来自分类Dev

查找特定月份和年份中星期的日期范围

来自分类Dev

从R中的日期中提取月份和年份

来自分类Dev

月份和年份字符串中的Javascript新日期

来自分类Dev

如何在UIDatePicker中禁用将来的日期,月份和年份?

来自分类Dev

查找特定月份和年份中星期的日期范围

Related 相关文章

  1. 1

    根据整数变量从临时表中选择TOP月份和年份数字

  2. 2

    将存储过程结果集分离到临时表中

  3. 3

    当在SQL Server中给出结束日期和月份数差异时,查找存储过程以查找月份的第一天

  4. 4

    更改文件的年份,保留月份中的月份和日期

  5. 5

    更改文件的年份,保留月份中的月份和日期

  6. 6

    Javascript或jQuery中的日期,月份和年份

  7. 7

    如何在excel中交换日期和月份数字

  8. 8

    获取存储过程的refcursor输出并插入到临时表中

  9. 9

    从日期获取月份和年份

  10. 10

    验证日期月份和年份

  11. 11

    将日期的月份和年份与日期行匹配

  12. 12

    根据熊猫中的特定年份和月份从多个日期列中过滤行

  13. 13

    将月份和日期列转换为R中的相应数字,并将表划分为2个矩阵

  14. 14

    从Javascript“日期”表格中解析日期,月份和年份

  15. 15

    将存储过程结果集插入到临时表并查询临时表

  16. 16

    SQL将月份和年份转换为日期格式

  17. 17

    将月份和年份更新为当前但离开日期

  18. 18

    在“数据表日期”列中显示月份名称和年份

  19. 19

    制作在VHDL中显示月份数和月份的日历?

  20. 20

    如何根据年末将月份和年份放入数据库中

  21. 21

    如何将x轴上的日期格式化为R中的月份和年份

  22. 22

    仅将两个日期与 PHP 中的月份和年份进行比较

  23. 23

    如何在网址中传递月份和年份

  24. 24

    如何在UIDatePicker中禁用将来的日期,月份和年份?

  25. 25

    查找特定月份和年份中星期的日期范围

  26. 26

    从R中的日期中提取月份和年份

  27. 27

    月份和年份字符串中的Javascript新日期

  28. 28

    如何在UIDatePicker中禁用将来的日期,月份和年份?

  29. 29

    查找特定月份和年份中星期的日期范围

热门标签

归档