千家信息网

mysql case 表达式

发表于:2024-12-01 作者:千家信息网编辑
千家信息网最后更新 2024年12月01日,一、 背景resc表保存了系统的一级、二级功能模块,同时保存了二级功能模块各页面的功能,通过pid定义了父子关系。想通过resc表,整理出一份,一级、二级功能模块的对应关系,类似于这样的结果。二、 实
千家信息网最后更新 2024年12月01日mysql case 表达式

一、 背景

resc表保存了系统的一级、二级功能模块,同时保存了二级功能模块各页面的功能,通过pid定义了父子关系。

想通过resc表,整理出一份,一级、二级功能模块的对应关系,类似于这样的结果。


二、 实现方法

select case when PID=1 then '用户管理'when PID=4 then '代理管理'when PID=8 then '媒体管理'when PID=21 then '报表管理'when PID=26 then '内容管理'when PID=30 then '业绩管理'when PID=34 then '财务管理'END as menu,`name`,PID from rescwhere pid in (select id from resc where pid=0)order by pid

执行结果:

将执行结果,粘贴到excel中,进行合并单元格,即可得到预期结果,可在excel中,对功能模块进行跟踪。


三、 理论

case表达式在sql中,可以实现if-then-else的逻辑。

有两种类型的case表达式:

  • 简单case表达式,使用表达式确定返回值;

  • 搜索case表达式,使用条件确定返回值。


  1. 使用简单case表达式

  • 语法:

case search_expression

when expression1 then result1

when expression2 then result2

...

when expressionN then resultN

else default_result

end


  • 关键字说明:

    • search_expression, 待求值的表达式,数据表的某个字段;

    • expressionX, 是与search_expression进行比较的表达式;

    • result1 ,是符合表达式时,返回的值

    • default_result ,是无法匹配表达式时,默认返回值。



2. 搜索case表达式

  • 语法:

case

when condition1 then result1

when condition2 then result2

...

when conditionN then resultN

else default_result

end

  • 关键字说明:

    • condition, 是待求值的表达式;

    • result, 是返回值,condition1为真,则返回result1,以此类推。

    • default_result ,是无法匹配表达式时,默认返回值。



表达式 管理 功能 功能模块 模块 结果 关键 关键字 语法 搜索 以此类推 业绩 内容 单元 可在 同时 媒体 字段 报表 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络技术的最新研究 软件开发要做哪些工作 IDC网络安全防护体系 网规考的关于网络安全 科技兴农战略 互联网 网络安全细化安全管理制度 简述对车载网络技术的认识 和企云网络技术有限公司 软件开发工程师需要考证吗 网络技术主要学什么语言 如何购买网站服务器 沈阳服务器管理 南京软件开发岗位招聘信息 软件开发大屏显示器 数据库原理实现自动化 想学个网络技术学什么 湖南服务器电源厂家定制 ios系统软件开发使用 河源自主可控软件开发供应商 泽达软件开发有限公司. 连接数据库失败未找到提供程序 工业互联网转向中控科技 数据库sql转换工具 数据库各部分的关系 安卓按键精灵操作网上数据库 杭州四为网络技术有限公司 软件开发属于什么税率 苏州东方互联网络科技公司 手游挂机服务器部署 高速监控数据服务器怎么管理
0