博客
关于我
MySQL函数
阅读量:796 次
发布时间:2023-02-11

本文共 1149 字,大约阅读时间需要 3 分钟。

CASE 函数与INTERVAL 的技术解析

CASE 函数是 SQL 中常用的条件判断工具,主要用于返回符合特定条件的结果。CASE 函数分为两种类型:简答 CASE 和搜索 CASE。

简答 CASE 的主要作用是根据测试表达式与各 WHEN 子句的简单表达式比较,返回第一个匹配的结果表达式值。如果没有匹配项且有 ELSE 子句,则返回 ELSE 中指定的结果;若无 ELSE 子句,则返回 null。

示例:

select 班号,班名,case     系号 when 1 then '软件工程系'     when 2 then '计算机系'     when 3 then '物联网系' end as 系号,班主任号 from 班级表

搜索 CASE 则用于验证布尔表达式。其工作流程是按顺序评估每个 WHERE 子句的布尔表达式,返回第一个取值为 true 的结果。如果无匹配项且有 ELSE 子句,则返回 ELSE 结果;若无 ELSE 子句,则返回 null。

示例:

select 班号,班名casewhen     系号=1 then '软件工程系' when     系号=2 then '计算机系' when     喜好=3 then '物联网系' end as 系号,班主任号from 班级表

案例分析:(1)统计班级男生和女生人数

select     班号,    count(case when 性别='男' then '男' end) 男生数,    count(case when 性别='女' then '女' end) 女生数from 学生表group by 班号

(2)按成绩等级分类并统计人数

select     casewhen         grade between 85 and 100 then '优'     when         grade between 70 and 84 then '良'     when         grade between 60 and 69 then '及格'     else '不及格' end 等级,count(*) 人数from SCgroup by 等级

INTERVAL 作为函数时,主要用于数据排序。其使用格式为 interval(4, 0,1,2,3,4,5,6),要求排序后依次与第一个数比较,返回小于等于的个数。

示例:

interval(4, 0,1,2,3,4,5,6) 返回 5

当 INTERVAL 用作关键字时,用于时间操作。常见于 date_add()data_sub() 等函数中。例如:

select now() - interval 2 hours

转载地址:http://hobfk.baihongyu.com/

你可能感兴趣的文章
Mysql学习总结(70)——MySQL 优化实施方案
查看>>
Mysql学习总结(71)——MySQL 重复记录查询与删除总结
查看>>
Mysql学习总结(73)——MySQL 查询A表存在B表不存在的数据SQL总结
查看>>
Mysql学习总结(77)——温故Mysql数据库开发核心原则与规范
查看>>
Mysql学习总结(78)——MySQL各版本差异整理
查看>>
Mysql学习总结(79)——MySQL常用函数总结
查看>>
Mysql学习总结(7)——MySql索引原理与使用大全
查看>>
Mysql学习总结(80)——统计数据库的总记录数和库中各个表的数据量
查看>>
Mysql学习总结(81)——为什么MySQL不推荐使用uuid或者雪花id作为主键?
查看>>
Mysql学习总结(82)——MySQL逻辑删除与数据库唯一性约束如何解决?
查看>>
Mysql学习总结(83)——常用的几种分布式锁:ZK分布式锁、Redis分布式锁、数据库分布式锁、基于JDK的分布式锁方案对比总结
查看>>
Mysql学习总结(84)—— Mysql的主从复制延迟问题总结
查看>>
Mysql学习总结(85)——开发人员最应该明白的数据库设计原则
查看>>
MySQL学习笔记十七:复制特性
查看>>
mysql安装卡在最后一步解决方案(附带万能安装方案)
查看>>
mysql安装和启动命令小结
查看>>
MySQL安装配置教程(非常详细),从零基础入门到精通,看完这一篇就够了
查看>>
mysql安装配置简介
查看>>
MySQL定义和变量赋值
查看>>
mysql实战01|基础架构:一条SQL查询语句是如何执行的?
查看>>