我可以使用" Y"或" N"结果?

时间:2014-12-17 17:01:10

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

我可以使用“Y”或“N”结果的临时列吗?

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

示例:

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

TempColumnLastKnownWell需要是临时专栏。它目前不存在,我不想永久存在。

2 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:3)

使用Case Statement创建临时列TempColumnLastKnownWell

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