首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GETDATE()案例陈述

GETDATE()案例陈述
EN

Stack Overflow用户
提问于 2013-10-03 08:25:55
回答 4查看 10.8K关注 0票数 2

不知道你能不能在这里的语法方面有所帮助。试图将一个变量设置为一个月值,这取决于它是否超过了这个月的第25天。

如果是,则使用当前月份(例如,如果日期是10月28日,变量' month‘将为10,如果是10月24日,则为9)。到目前为止,我得到了以下信息:

代码语言:javascript
复制
select a
case
    when (SELECT DAY(GETDATE()) >= 25
    then a = (SELECT MONTH(GETDATE()))
    else a = (SELECT MONTH(GETDATE()) - 1)
end

我知道你不能用少于或大于符号,因为案例陈述只用于评估(=)?有人能提出其他办法吗?

谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-10-03 08:31:37

据我所知,你需要这种用法;

代码语言:javascript
复制
select
case
    when DAY (GETDATE()) = 25 then  MONTH(GETDATE())
    else  MONTH(GETDATE()) - 1
end
票数 1
EN

Stack Overflow用户

发布于 2013-10-03 08:31:15

代码语言:javascript
复制
select @your_variable = case when DAY(GETDATE()) = 25
                             then MONTH(GETDATE())
                             else MONTH(GETDATE()) - 1
                        end 
票数 3
EN

Stack Overflow用户

发布于 2013-10-03 08:32:25

您可以将><运算符与案例结合使用。以下是你所期望的吗?

代码语言:javascript
复制
SELECT CASE WHEN DAY(GETDATE()) > 24
    THEN MONTH(GETDATE())
    ELSE MONTH(GETDATE()) + 1
END AS [a]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19154305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档