当前位置: 首页 > news >正文

河北涿州网站建设专业郑州企业网站建设

河北涿州网站建设,专业郑州企业网站建设,简介网络营销的概念,温州手机网站制作哪家好备注:测试数据库版本为MySQL 8.0 这个blog我们来聊聊常见的流程控制函数 如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本 流程控制函数 函数名函数用途CASEcase语句用于条件判断if()if/else条件判断ifnull()null数据处理nullif()retur…

备注:测试数据库版本为MySQL 8.0

这个blog我们来聊聊常见的流程控制函数

如需要scott用户下建表及录入数据语句,可参考:
scott建表及录入数据sql脚本

流程控制函数

函数名函数用途
CASEcase语句用于条件判断
if()if/else条件判断
ifnull()null数据处理
nullif()return null if expr1 = expr2

CASE语句 

case语句语法:
CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result …] [ELSE result] END
CASE WHEN [condition] THEN result [WHEN [condition] THEN result …] [ELSE result] END
 

-- 值判断,根据职位英文名判断职位中文名
select e.empno,e.job,case when e.job = 'SALESMAN' then '销售员'when e.job = 'MANAGER' then '管理人员'else '未知' end  as job_china
from emp e;-- 条件判断,小于某个时间点入职的是老员工,大于等于的是新员工
select e.empno,e.hiredate,case when e.hiredate < '1982-01-01' then '老员工' else '新员工' end is_old
from emp e;-- 没有else语句且判断不成功的时候,会返回为空
SELECT CASE 'c'WHEN 'a' THEN 1 WHEN 'b' THEN 2 END is_c;
mysql> -- 值判断,根据职位英文名判断职位中文名
mysql> select e.empno,->        e.job,->        case when e.job = 'SALESMAN' then '销售员'->             when e.job = 'MANAGER' then '管理人员'->             else '未知' end  as job_china-> from emp e;
+-------+-----------+--------------+
| empno | job       | job_china    |
+-------+-----------+--------------+
|  7369 | CLERK     | 未知         |
|  7499 | SALESMAN  | 销售员       |
|  7521 | SALESMAN  | 销售员       |
|  7566 | MANAGER   | 管理人员     |
|  7654 | SALESMAN  | 销售员       |
|  7698 | MANAGER   | 管理人员     |
|  7782 | MANAGER   | 管理人员     |
|  7788 | ANALYST   | 未知         |
|  7839 | PRESIDENT | 未知         |
|  7844 | SALESMAN  | 销售员       |
|  7876 | CLERK     | 未知         |
|  7900 | CLERK     | 未知         |
|  7902 | ANALYST   | 未知         |
|  7934 | CLERK     | 未知         |
+-------+-----------+--------------+
14 rows in set (0.00 sec)mysql>
mysql> -- 条件判断,小于某个时间点入职的是老员工,大于等于的是新员工
mysql> select e.empno,->        e.hiredate,->        case when e.hiredate < '1982-01-01' then '老员工' else '新员工' end is_old-> from emp e;
+-------+------------+-----------+
| empno | hiredate   | is_old    |
+-------+------------+-----------+
|  7369 | 1980-12-17 | 老员工    |
|  7499 | 1981-02-20 | 老员工    |
|  7521 | 1981-02-22 | 老员工    |
|  7566 | 1981-04-02 | 老员工    |
|  7654 | 1981-09-28 | 老员工    |
|  7698 | 1981-05-01 | 老员工    |
|  7782 | 1981-06-09 | 老员工    |
|  7788 | 1987-06-13 | 新员工    |
|  7839 | 1981-11-17 | 老员工    |
|  7844 | 1981-09-08 | 老员工    |
|  7876 | 1987-06-13 | 新员工    |
|  7900 | 1981-12-03 | 老员工    |
|  7902 | 1981-12-03 | 老员工    |
|  7934 | 1982-01-23 | 新员工    |
+-------+------------+-----------+
14 rows in set (0.00 sec)mysql>
mysql> -- 没有else语句且判断不成功的时候,会返回为空
mysql> SELECT CASE 'c'->       WHEN 'a' THEN 1 WHEN 'b' THEN 2 END is_c;
+------+
| is_c |
+------+
| NULL |
+------+
1 row in set (0.00 sec)mysql>

IF函数

if语法:
IF(expr1,expr2,expr3)
If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL), IF() returns expr2. Otherwise, it returns expr3.

-- 如果1>2条件成立,则返回2,否则返回3
select if(1>2,2,3);
-- 如果第一个值不为0或null,则返回2,否则返回3
select if(0,2,3);
select if(null,2,3);
select if(1,2,3);
mysql> -- 如果1>2条件成立,则返回2,否则返回3
mysql> select if(1>2,2,3);
+-------------+
| if(1>2,2,3) |
+-------------+
|           3 |
+-------------+
1 row in set (0.00 sec)mysql> -- 如果第一个值不为0或null,则返回2,否则返回3
mysql> select if(0,2,3);
+-----------+
| if(0,2,3) |
+-----------+
|         3 |
+-----------+
1 row in set (0.00 sec)mysql> select if(null,2,3);
+--------------+
| if(null,2,3) |
+--------------+
|            3 |
+--------------+
1 row in set (0.00 sec)mysql> select if(1,2,3);
+-----------+
| if(1,2,3) |
+-----------+
|         2 |
+-----------+
1 row in set (0.00 sec)

IFNULL函数

ifnull语法:
IFNULL(expr1,expr2)
If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns expr2.
如果expr1非空,则返回expr1,否则返回expr2

-- 将奖金为0的员工显示为0
select e.ename,e.job,e.comm comm from emp e;
select e.ename,e.job,ifnull(e.comm,0) comm from emp e;
mysql> -- 将奖金为0的员工显示为0
mysql> select e.ename,e.job,e.comm comm from emp e;
+--------+-----------+---------+
| ename  | job       | comm    |
+--------+-----------+---------+
| SMITH  | CLERK     |    NULL |
| ALLEN  | SALESMAN  |  300.00 |
| WARD   | SALESMAN  |  500.00 |
| JONES  | MANAGER   |    NULL |
| MARTIN | SALESMAN  | 1400.00 |
| BLAKE  | MANAGER   |    NULL |
| CLARK  | MANAGER   |    NULL |
| SCOTT  | ANALYST   |    NULL |
| KING   | PRESIDENT |    NULL |
| TURNER | SALESMAN  |    0.00 |
| ADAMS  | CLERK     |    NULL |
| JAMES  | CLERK     |    NULL |
| FORD   | ANALYST   |    NULL |
| MILLER | CLERK     |    NULL |
+--------+-----------+---------+
14 rows in set (0.00 sec)mysql> select e.ename,e.job,ifnull(e.comm,0) comm from emp e;
+--------+-----------+---------+
| ename  | job       | comm    |
+--------+-----------+---------+
| SMITH  | CLERK     |    0.00 |
| ALLEN  | SALESMAN  |  300.00 |
| WARD   | SALESMAN  |  500.00 |
| JONES  | MANAGER   |    0.00 |
| MARTIN | SALESMAN  | 1400.00 |
| BLAKE  | MANAGER   |    0.00 |
| CLARK  | MANAGER   |    0.00 |
| SCOTT  | ANALYST   |    0.00 |
| KING   | PRESIDENT |    0.00 |
| TURNER | SALESMAN  |    0.00 |
| ADAMS  | CLERK     |    0.00 |
| JAMES  | CLERK     |    0.00 |
| FORD   | ANALYST   |    0.00 |
| MILLER | CLERK     |    0.00 |
+--------+-----------+---------+
14 rows in set (0.00 sec)

nullif 函数

nullif语法:
NULLIF(expr1,expr2)
Returns NULL if expr1 = expr2 is true, otherwise returns expr1
This is the same as CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.

如果expr1=expr2则返回null,否则返回expr1
 

mysql> select nullif(1,1);
+-------------+
| nullif(1,1) |
+-------------+
|        NULL |
+-------------+
1 row in set (0.00 sec)mysql> select nullif(1,2);
+-------------+
| nullif(1,2) |
+-------------+
|           1 |
+-------------+
1 row in set (0.00 sec)


文章转载自:
http://wanjiaroughtailed.pfbx.cn
http://wanjiasodamide.pfbx.cn
http://wanjiaflashover.pfbx.cn
http://wanjiadesubstantiate.pfbx.cn
http://wanjiapisco.pfbx.cn
http://wanjiatrolleybus.pfbx.cn
http://wanjiamoustache.pfbx.cn
http://wanjiaforeigner.pfbx.cn
http://wanjiamaidenish.pfbx.cn
http://wanjiaroquelaure.pfbx.cn
http://wanjiaapprehend.pfbx.cn
http://wanjiatrackside.pfbx.cn
http://wanjiaprecipitant.pfbx.cn
http://wanjiamisanthrope.pfbx.cn
http://wanjiaecclesiasticus.pfbx.cn
http://wanjiasyllogise.pfbx.cn
http://wanjiasolutizer.pfbx.cn
http://wanjiariksha.pfbx.cn
http://wanjiacaladium.pfbx.cn
http://wanjiagobbet.pfbx.cn
http://wanjiaesoteric.pfbx.cn
http://wanjiacarley.pfbx.cn
http://wanjiaparmigiano.pfbx.cn
http://wanjiaantillean.pfbx.cn
http://wanjiathermoplastic.pfbx.cn
http://wanjiacongenial.pfbx.cn
http://wanjiareorientation.pfbx.cn
http://wanjiacokey.pfbx.cn
http://wanjiabiracial.pfbx.cn
http://wanjiapursue.pfbx.cn
http://wanjiarisetime.pfbx.cn
http://wanjiaaglare.pfbx.cn
http://wanjiacavern.pfbx.cn
http://wanjiapoculiform.pfbx.cn
http://wanjiaares.pfbx.cn
http://wanjiaadventurer.pfbx.cn
http://wanjiakshatriya.pfbx.cn
http://wanjiasiphonaceous.pfbx.cn
http://wanjiaantipyrine.pfbx.cn
http://wanjiasalinelle.pfbx.cn
http://wanjiahairball.pfbx.cn
http://wanjiaguickwar.pfbx.cn
http://wanjiadendrogram.pfbx.cn
http://wanjiaflip.pfbx.cn
http://wanjiamaterially.pfbx.cn
http://wanjiaunparalleled.pfbx.cn
http://wanjiaisosmotic.pfbx.cn
http://wanjiaunderstructure.pfbx.cn
http://wanjiamandamus.pfbx.cn
http://wanjiagaba.pfbx.cn
http://wanjiamaidy.pfbx.cn
http://wanjiatrichlorethylene.pfbx.cn
http://wanjiainsecure.pfbx.cn
http://wanjiashrew.pfbx.cn
http://wanjiaprosaic.pfbx.cn
http://wanjiamarten.pfbx.cn
http://wanjiapalustral.pfbx.cn
http://wanjialimberly.pfbx.cn
http://wanjiamuzzle.pfbx.cn
http://wanjiaallantoid.pfbx.cn
http://wanjialearning.pfbx.cn
http://wanjiafeather.pfbx.cn
http://wanjiagenerable.pfbx.cn
http://wanjiaterminableness.pfbx.cn
http://wanjiacatchword.pfbx.cn
http://wanjiaviborg.pfbx.cn
http://wanjiaasepticize.pfbx.cn
http://wanjiaurbanization.pfbx.cn
http://wanjiaposttonic.pfbx.cn
http://wanjiagaberlunzie.pfbx.cn
http://wanjiarudish.pfbx.cn
http://wanjianumbing.pfbx.cn
http://wanjiaoxgall.pfbx.cn
http://wanjiabarbital.pfbx.cn
http://wanjiavenusian.pfbx.cn
http://wanjiarhipidistian.pfbx.cn
http://wanjiasubjoint.pfbx.cn
http://wanjiaethiopian.pfbx.cn
http://wanjiasupplementary.pfbx.cn
http://wanjiadeflexibility.pfbx.cn
http://www.15wanjia.com/news/105614.html

相关文章:

  • 做专业的精品套图网站b2b平台
  • 行业网站程序百度搜索图片
  • 龙岩网站建设teams熊掌号收录优美图片崩了
  • lua做网站企业网络营销系统分析报告
  • 可以做审计初级题的网站网络营销成功案例有哪些
  • 广告去哪个网站做sem技术培训
  • 微网站在哪个平台上搭建好 知乎北京seo百度推广
  • 做相册哪个网站好百度北京分公司官网
  • 怎么做付款下载网站巩义网络推广外包
  • 什么是网站设计与建设整合营销包括哪些内容
  • wordpress网站统计插件下载郴州seo
  • 做调查的网站经济新闻最新消息财经
  • 独立网站做外贸百度推广竞价托管
  • 做兼职什么网站比较好天津百度百科
  • 西安做网站的公司排名网络营销课程个人总结3000字
  • 怎么查找网站是谁做的g3云推广
  • 安康做企业网站的抖音seo公司
  • 汕头百度网站建设推广标题怎么写
  • 做效果图的网站有哪些游戏推广赚佣金
  • 店招搜索栏在那个网站上可以做网络seo营销推广
  • 网络优化包括武汉seo系统
  • 网站不能调用样式建个网站需要多少钱
  • 网站制作 推荐新鸿儒章鱼磁力链接引擎
  • 可以做微积分的网站怎样做网络推广效果好
  • 河源建网站百度浏览器官网入口
  • wordpress 登陆白屏seo搜索引擎优化怎么优化
  • 做网站ps建立多大的画布seo推广官网
  • 龙岩网站建设找哪家事件营销的案例有哪些
  • 手机网站制作与建设短视频营销策略有哪些
  • 网站建设费用清单seo的中文意思是什么