【问题标题】:Can I have a temp column with "Y" or "N" result?我可以有一个带有“Y”或“N”结果的临时列吗?
【发布时间】:2014-12-17 17:01:09
【问题描述】:

我可以有一个带有“Y”或“N”结果的临时列吗?

我有一个列名LastKnownWellDate,它存储日期。如果输入日期,我需要在新的临时列中有“Y”。如果未输入日期,则在 temp 列中输入“N”。

例子:

If LastKnownWellDate is null then "N" in TempColumnLastKnownWell
Else "Y" in TempColumnLastKnownWell

TempColumnLastKnownWell 需要是一个临时列。它目前不存在,我也不想永久使用它。

【问题讨论】:

    标签: sql sql-server-2008 sql-server-2012


    【解决方案1】:

    case statement 将在 sql 中执行 if-then-else 逻辑。

    select
      case when LastKnownWellDate is null then 'N' 
           else 'Y' end as TempColumnLastKnownWell
    from 
      mytable
    

    【讨论】:

    • 您的解决方案与上面的第一个解决方案一样有效。非常感谢。
    【解决方案2】:

    使用Case Statement 创建Temp 列TempColumnLastKnownWell

    SELECT *,
           TempColumnLastKnownWell = CASE
                                       WHEN LastKnownWellDate IS NULL THEN 'N'
                                       ELSE 'Y'
                                     END
    FROM   tablename 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多