【MySQL】CASE関数を使ってみる

sql SQL

sql 

CASE関数は、SQLでデータの条件分岐を行うために使用される制御構文の1つです。CASE関数は、条件に応じて異なる値を返すことができます。

次のような構文を持ちます。

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    WHEN conditionN THEN resultN
    ELSE result
END

ここで、condition1condition2、…、conditionNは条件式で、result1result2、…、resultNは、対応する条件式が真である場合に返される結果値です。
ELSEを使用することで、すべての条件式が偽である場合に返されるデフォルト値を指定することができます。

以下は、CASE関数を使用した例です。

SELECT 
    ProductName, 
    UnitsInStock, 
    CASE 
        WHEN UnitsInStock < 10 THEN 'Low stock'
        WHEN UnitsInStock >= 10 AND UnitsInStock <= 20 THEN 'Medium stock'
        ELSE 'High stock'
    END AS StockStatus
FROM 
    Products;

この例では、Productsテーブルから、ProductNameUnitsInStock列を取得します。
CASE関数を使用して、UnitsInStockの値に応じて、Low stockMedium stockHigh stockのいずれかを返すStockStatus列を作成します。

参考

MySQL :: MySQL 8.0 Reference Manual :: 15.6.5.1 CASE Statement

コメント

タイトルとURLをコピーしました