Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql的case

作者:狂刀血斧   发布日期:2025-04-07   浏览:67

-- MySQL CASE 示例代码

-- 简单的 CASE 语句
SELECT 
    employee_id,
    salary,
    CASE 
        WHEN salary > 8000 THEN 'High'
        WHEN salary BETWEEN 5000 AND 8000 THEN 'Medium'
        ELSE 'Low'
    END AS salary_level
FROM employees;

-- 带有多个条件的 CASE 语句
SELECT 
    product_id,
    price,
    stock,
    CASE 
        WHEN price > 100 AND stock > 50 THEN 'High Price & High Stock'
        WHEN price > 100 AND stock <= 50 THEN 'High Price & Low Stock'
        WHEN price <= 100 AND stock > 50 THEN 'Low Price & High Stock'
        ELSE 'Low Price & Low Stock'
    END AS product_status
FROM products;

-- 使用 CASE 进行聚合计算
SELECT 
    department_id,
    SUM(CASE WHEN hire_date < '2020-01-01' THEN salary ELSE 0 END) AS old_hires_salary,
    SUM(CASE WHEN hire_date >= '2020-01-01' THEN salary ELSE 0 END) AS new_hires_salary
FROM employees
GROUP BY department_id;

解释说明:

  1. 简单的 CASE 语句:

    • 根据 salary 列的值,将员工的工资水平分为 "High"、"Medium" 和 "Low"。
    • 使用 WHEN 条件来判断每个员工的工资属于哪个级别。
  2. 带有多个条件的 CASE 语句:

    • 根据 pricestock 列的组合条件,将产品的状态分为不同的类别。
    • 使用多个 WHEN 条件来处理复杂的逻辑判断。
  3. 使用 CASE 进行聚合计算:

    • 计算每个部门中在不同时间范围内雇佣的员工的工资总和。
    • 使用 CASESUM 函数中进行条件判断,从而实现分组聚合计算。

上一篇:mysql中text类型

下一篇:查看mysql安装目录的命令

大家都在看

mysqlavg函数保留小数

mysql经纬度距离计算

存储过程mysql

mysql with语句

mysql时间加减

brew 启动mysql

unsigned在mysql中是什么意思

mysql 插入更新

python mysql update

mysql 查看权限

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站