中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

Case When在復雜查詢中的運用

sql
小樊
117
2024-08-30 16:57:24
欄目: 編程語言

CASE WHEN 是 SQL 中的一個條件表達式,它可以在 SELECT、UPDATE 和 WHERE 子句中使用

  1. 在 SELECT 子句中使用 CASE WHEN:
SELECT customer_id, first_name, last_name,
       CASE
           WHEN total_orders >= 10 THEN 'Frequent Customer'
           WHEN total_orders < 10 AND total_orders > 0 THEN 'Occasional Customer'
           ELSE 'New Customer'
       END AS customer_type
FROM customers;

這個查詢會返回一個包含客戶類型的結果集。根據客戶的訂單數量,我們將客戶分為“常客”、“偶爾客戶”和“新客戶”。

  1. 在 UPDATE 子句中使用 CASE WHEN:
UPDATE products
SET price = CASE
                WHEN price < 100 THEN price * 1.1
                WHEN price >= 100 AND price < 500 THEN price * 1.05
                ELSE price * 1.02
            END;

這個查詢會更新產品表中的價格。根據產品的當前價格,我們對價格進行不同比例的調整。

  1. 在 WHERE 子句中使用 CASE WHEN:
SELECT employee_id, first_name, last_name, salary
FROM employees
WHERE salary > (
    CASE
        WHEN department_id = 1 THEN 50000
        WHEN department_id = 2 THEN 60000
        ELSE 40000
    END
);

這個查詢會返回一個包含員工 ID、名字、姓氏和薪水的結果集,其中薪水高于部門平均水平。我們根據部門 ID 設置了不同的薪水閾值。

通過在復雜查詢中使用 CASE WHEN,你可以根據多種條件靈活地處理數據。這有助于提高查詢的可讀性和可維護性,同時也能提高查詢效率。

0
鹤峰县| 丹巴县| 奉节县| 襄汾县| 潮州市| 安宁市| 田林县| 上杭县| 泰顺县| 彭山县| 乐清市| 蒲城县| 洪泽县| 唐河县| 青龙| 安国市| 眉山市| 平利县| 克什克腾旗| 嘉峪关市| 屯留县| 尚义县| 白沙| 香格里拉县| 玛纳斯县| 静宁县| 安福县| 黔西县| 宝丰县| 灯塔市| 泾源县| 那坡县| 梁山县| 文水县| 株洲市| 大洼县| 津市市| 房山区| 清流县| 辰溪县| 根河市|