tsql - 如果列中的日期来自上个月,如何计算
问题描述
对于我们的抵押贷款,我们会跟踪“锁定日期”。我想写一个表达式来计算上个月发生的锁定日期的数量(我们在我的 sql 系统中有一个用于上个月开始、上个月结束或只是上个月名称的标记)
这是据我所知,但我不断收到错误消息:
COUNT(LockDate)
CASE WHEN LockDate BETWEEN @prevmonthstart AND @prevmonthend
解决方案
将您的表达式更改为:
COUNT(CASE WHEN LockDate BETWEEN @prevmonthstart AND @prevmonthend THEN LockDate ELSE NULL END)
你应该得到你正在寻找的结果。完成同样事情的另一种方法是将 SUM 与条件表达式一起使用:
SUM(CASE WHEN LockDate BETWEEN @prevmonthstart AND @prevmonthend THEN 1 ELSE 0 END)
这可能更容易阅读。
推荐阅读
- reactjs - 为什么材质 UI 反应步进器没有标签焦点?
- ios - How do i know if a specific date is a month, or a week to an parent date?
- python - Changing a string to a float when doing web scraping Python
- javascript - 添加到愿望清单按钮在漂亮的照片脚本中不起作用
- git - Devops 管道 - 从其他 repo 签出代码:auth 错误
- email - Freemarker Loop to write tables
- angular9 - Angular 9 从源“http://localhost:4200”访问“xxxxxx.net/api”的 XMLHttpRequest 已被策略阻止
- mongodb - CosmosDB 中不同的唯一键和分区键
- java - How to get value from position adapter RecyclerView
- google-apps-script - Google表格脚本:删除基于复选框的范围