【问题标题】:SQL Computed Column Case with Multiple Criteria具有多个条件的 SQL 计算列案例
【发布时间】:2013-02-26 21:21:07
【问题描述】:

我在使用多个条件的 Case 语句时遇到问题,我不知道如何嵌套另一个 CASE。

  • DateTime专栏:Control_OpenDateOwner
  • DateTime 专栏:Control_ClosedDateRev

计算列:

(case when [Control_ClosedDateRev] IS NULL then '1' else '0' end)

我想计算OPENDATE 何时打开超过 4 天(使用 today())并且关闭日期为 Null,放置一个 1(打开记录并且打开超过 4 天或@ 987654330@ 如果记录关闭或打开不到 4 天,我无法让它工作。

注意:初学者,我不是 SQL 专家。试过这篇文章,但对我来说有点困惑。 (Best way to do nested case statement logic in SQL Server)

谢谢

【问题讨论】:

  • 你的错误信息是什么?
  • 'today' 不是公认的内置函数名称。根据我发现简单的 MATT BUSCHE 代码。
  • sql-server上没有这个功能。你可以使用getdate()

标签: sql sql-server tsql


【解决方案1】:

您可以在CASE 语句中使用AND。在这种情况下,您不需要执行真正的嵌套 CASE 语句

(CASE WHEN [Control_ClosedDateRev] IS NULL AND DateDiff(day,opendate,getDate()) > 4 THEN '1' ELSE '0' END)

【讨论】:

  • 我收到“验证错误”,“今天”不是可识别的内置函数名称。
猜你喜欢
  • 2021-08-06
  • 2021-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-24
  • 2017-06-18
  • 1970-01-01
  • 2015-10-28
相关资源
最近更新 更多