サーチ…


備考

上記の例は、曜日の例でSQL Serverでcaseステートメントを使用するための構文を示しています。 "SELECT DATENAME(WEEKDAY、GETDATE())"も同様の出力が可能です。

シンプルなCASE文

単純な文では、複数の可能な回答に対して1つの値または変数がチェックされます。以下のコードは、単純なcase文の例です。

SELECT CASE DATEPART(WEEKDAY, GETDATE())
    WHEN 1 THEN 'Sunday'
    WHEN 2 THEN 'Monday' 
    WHEN 3 THEN 'Tuesday' 
    WHEN 4 THEN 'Wednesday' 
    WHEN 5 THEN 'Thursday' 
    WHEN 6 THEN 'Friday' 
    WHEN 7 THEN 'Saturday' 
END

検索されたCASEステートメント

Searched Caseステートメントでは、各オプションは1つ以上の値を個別にテストできます。以下のコードは、検索されたcase文の例です。

DECLARE @FirstName varchar(30) = 'John'
DECLARE @LastName varchar(30) = 'Smith'

SELECT CASE
    WHEN LEFT(@FirstName, 1) IN ('a','e','i','o','u')
        THEN 'First name starts with a vowel'
    WHEN LEFT(@LastName, 1) IN ('a','e','i','o','u')
        THEN 'Last name starts with a vowel'
    ELSE
        'Neither name starts with a vowel'
END


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow