🌈个人主页: Aileen_0v0
🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法
💫个人格言:“没有罗马,那就自己创造罗马~”
#mermaid-svg-Ny0xnYjfHqF7s3aS {font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .error-icon{fill:#552222;}#mermaid-svg-Ny0xnYjfHqF7s3aS .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Ny0xnYjfHqF7s3aS .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .marker.cross{stroke:#333333;}#mermaid-svg-Ny0xnYjfHqF7s3aS svg{font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .label{font-family:”trebuchet ms”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .cluster-label text{fill:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .cluster-label span{color:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .label text,#mermaid-svg-Ny0xnYjfHqF7s3aS span{fill:#333;color:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .node rect,#mermaid-svg-Ny0xnYjfHqF7s3aS .node circle,#mermaid-svg-Ny0xnYjfHqF7s3aS .node ellipse,#mermaid-svg-Ny0xnYjfHqF7s3aS .node polygon,#mermaid-svg-Ny0xnYjfHqF7s3aS .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .node .label{text-align:center;}#mermaid-svg-Ny0xnYjfHqF7s3aS .node.clickable{cursor:pointer;}#mermaid-svg-Ny0xnYjfHqF7s3aS .arrowheadPath{fill:#333333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-Ny0xnYjfHqF7s3aS .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-Ny0xnYjfHqF7s3aS .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Ny0xnYjfHqF7s3aS .cluster text{fill:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS .cluster span{color:#333;}#mermaid-svg-Ny0xnYjfHqF7s3aS div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:”trebuchet ms”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Ny0xnYjfHqF7s3aS :root{–mermaid-font-family:”trebuchet ms”,verdana,arial,sans-serif;}
文章目录
- `函数`
-
- `流程函数`
- `if函数`
- `ifnull函数`
- `case函数`
- `case函数`
- `函数总结`
-
- `Exercises`
函数
流程函数
流程函数:
可在SQL语句中实现条件筛选,提高语句效率。
函数 |
功能 |
---|---|
if(value,t,f) |
如果value为true,则返回t,否则返回f |
ifnull(value1,value2) |
如果value1不为空,则返回value1,否则返回value2 |
case when [ val1 ] then [ res1 ] ... else [ default ] end |
如果val1为true,返回 |
case [ expr ] when [ val1 ] then [ res1 ] ... else [ default ] end |
如果expr的值等于val1,返回res1,… 否则返回default默认值 |
if函数
-- 流程控制函数
-- if
select if(false,'Aileen','Betty');
ifnull函数
-- ifnull
select ifnull('ok','default');
select ifnull('','default');
select ifnull(null, 'default');
case函数
-- case when then else end
-- 需求: 查询emp 表的员工姓名和工作地址(北京/上海 ----> 一线城市 , 其他 ----> 二线城市)
-- 首先将员工姓名和工作地址先筛选出来
select name,WORKADDRESS from emp;
-- 再根据需求进行条件筛选
select
name,
case WORKADDRESS when '北京' then '一线城市' when '上海' then '一线城市' else '二线城市' end
from emp;
case函数
将分数转换为等级
-- 案例: 统计班级各学员的成绩,展示的规则如下:
-- >= 85, 展示优秀
-- >= 60, 展示及格
-- 否则, 展示不及格
create table score(
id int comment 'ID',
name varchar(20) comment '姓名',
math int comment '数学',
english int comment '英语',
chinese int comment '语文'
) comment '学员成绩表';
insert into score(id, name, math, english, chinese) values (1,'Tom',67,88,95),(2,'Rose',23,66,90),(3,'Jack',56,98,76);
select
id,
name,
(case when chinese >= 85 then '优秀' when chinese >= 60 then '及格' else '不及格' end ) '语文',
(case when english >= 85 then '优秀' when english >= 60 then '及格' else '不及格' end ) '英语',
(case when math >= 85 then '优秀' when math >= 60 then '及格' else '不及格' end ) '数学'
from score;
函数总结
Exercises
计算我加入CSDN的时间
select datediff('2024-2-12','2023-3-14');