MySQL-DQL-案例

文章展示了两个MySQL查询案例,一是实现员工管理的条件分页查询,根据姓名、性别和入职时间筛选并限制每页10条记录。二是进行员工数据统计,包括性别和职位信息,利用IF函数和CASE表达式对性别和职位进行分类计数。
摘要由CSDN通过智能技术生成

案例

  • 案例1

  • 根据需求完成员工管理的条件分页查询
    • 具体代码
    • -- 案例1:按需求完成员工管理的条件分页查询 - 根据输入条件,查询第一页数据,每页展示10条记录
      -- 输入条件:
      -- 姓名:张
      -- 性别:男
      -- 入职时间:2000-01-01 ~ 2015-12-31
      select id,
             username,
             password,
             name,
             gender,
             image,
             job,
             entrydate,
             create_time,
             update_time
      from tb_emp
      where entrydate between '2000-01-01' and '2015-12-31'
        and name like '%张%'
        and gender = 1
      order by update_time desc
      limit 10;
  • 案例2

    • 根据需求,完成员工数据的统计

    •  具体代码

    • -- 案例2-1:根据需求完成,完成员工性别信息的统计
      -- if (条件表达式,true取值,false取值)
      select if(gender = 1, '男性员工', '女性员工'), count(*)
      from tb_emp
      group by gender;
      
      -- 案例2-2:根据需求完成员工职位信息的统计
      -- MySQL中流程控制语句:
      -- case 表达式 when 值1 then 结果1 when 值2 then 结果2 when 值3 then 结果3....else 默认值 end
      select case job
                 when 1 then '班主任'
                 when 2 then '讲师'
                 when 3 then '学工主管'
                 when 4 then '教研主管'
                 else '未分配职位' end,
             count(*)
      from tb_emp
      group by job
    • 分别运行结果如下

小结

  • 流程控制函数

    • if(表达式,tvalue,fvalue):当表达式为true时,取tvalue;当表达式为false时,取值为fvalue

    • case expr when value1 then result1 [when value2 then value2...][else result] end



 


 


 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值