从子查询返回一个字符串

时间:2011-05-16 12:05:54

标签: sql sql-server-2005

在SQL语句中,如何根据另一列中的值返回字符串值?

语言是T-SQL

我希望子查询将以下伪代码表达式的结果返回到名为Current_YTD的新列

IF(Committed_Date >= '01/04/2011') THEN Current_YTD = 'Y'

Committed_Date是DateTime类型

2 个答案:

答案 0 :(得分:2)

SELECT
        CASE
            WHEN Committed_Date >= '01/04/2011' THEN 'Y'
            ELSE 'N'
        END
FROM <table>

答案 1 :(得分:2)

假设SQL Server(可能来自您的问题历史记录),您需要CASE语句:

SELECT 
    CASE 
        WHEN Committed_Date >= '01/04/2011' THEN 'Y' 
        ELSE 'N' 
    END AS Current_YTD
FROM YourTable