SQL Case 语句中的两个值相减

Posted

技术标签:

【中文标题】SQL Case 语句中的两个值相减【英文标题】:Subtracting two values in SQL Case Statement 【发布时间】:2013-12-24 19:26:00 【问题描述】:

我需要在 case 语句中减去我正在计算的两个值,但我似乎无法完成它。这是我正在尝试做的事情,我得到的错误是“关键字 END 附近的语法不正确”:

[Date] = 
  CASE 
    WHEN [col] = 'YES' 
    THEN CONCAT(MONTH(AnniversaryDate),'/',DAY(AnniversaryDate),'/',(YEAR(GETDATE()) + (YEAR(GETDATE()) - YEAR(AnniversaryDate)))
    END,

我是否应该将差值存储在其他列中,而不是计算我当前正在计算的减法?

谢谢!

【问题讨论】:

【参考方案1】:

您缺少右括号。

【讨论】:

好吧,我觉得自己像个白痴。我数了大约 3 次,但没有看到 :(。谢谢!节日快乐! 还有你!并且不要对计数感到难过;查看编辑历史以找到我的第一个答案。 :-)

以上是关于SQL Case 语句中的两个值相减的主要内容,如果未能解决你的问题,请参考以下文章

MySQL两表字段相加减,主要是相减,sql语句怎么写

条件判断语句下篇)

SqlServer数据库要求按照两数相减结果的绝对值正序排列怎么写sql语句?

PL/SQL 中 CASE 语句中的堆栈条件

SQL查询语句SELECT中带有case when嵌套子查询判断的问题

CASE 语句 SQL 中返回多列