根据当前日期仅从天(1,2,3..31) 派生日期
你好 SOF 社区:
我有一个像这样的表,
InvoicingActivityStartDay InvoicingActivityEndDay
27 26
27 26
01 NULL --NULL MEANS LAST DAY OF MONTH
01 NULL
15 14
我需要一个 T-SQL 查询,在给定当前日期的情况下,它将返回上述数据的以下内容;如果当前日期 = 2012 年 1 月 12 日,结果应如下所示,
InvoicingActivityStartDATE InvoicingActivityEndDATE
27-DEC-2011 12:00:00.000 26-JAN-2012 23:59:99.999
27-DEC-2011 12:00:00.000 26-JAN-2012 23:59:99.999
01-DEC-2011 12:00:00.000 31-DEC-2011 23:59:99.999
01-DEC-2011 12:00:00.000 31-DEC-2011 23:59:99.999
15-DEC-2011 12:00:00.000 14-JAN-2012 23:59:99.999
您能告诉我如何在单个查询中完成此操作吗?
请注意,如果开始日为 1,则意味着结束日始终是上个月的最后一天。
Hello SOF community:
I have a table like this
InvoicingActivityStartDay InvoicingActivityEndDay
27 26
27 26
01 NULL --NULL MEANS LAST DAY OF MONTH
01 NULL
15 14
I need a T-SQL query that will return the following for the data above, given the current date; if current date = 12-JAN-2012, the results should be as below
InvoicingActivityStartDATE InvoicingActivityEndDATE
27-DEC-2011 12:00:00.000 26-JAN-2012 23:59:99.999
27-DEC-2011 12:00:00.000 26-JAN-2012 23:59:99.999
01-DEC-2011 12:00:00.000 31-DEC-2011 23:59:99.999
01-DEC-2011 12:00:00.000 31-DEC-2011 23:59:99.999
15-DEC-2011 12:00:00.000 14-JAN-2012 23:59:99.999
Can you please show me how this be done in a single query?
Please note that if the start day is 1, that means the end day is always the last day of the previous month.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果我正确解释您的要求(开始日期是上个月的那一天,结束日期是本月的那一天;除非开始日期为 1),那么您可能需要这样的东西(假设您的开始/结束日期天是整数;如果不是,则将它们转换为整数):
If I interpret your requirements correctly (that the start day is that day of last month, and the end day is that day of this month; except when start day is 1), then you may want something like this (assuming your start/end days are integers; if not, cast them as ints):