mysql中case when then end的含义和用法
参见这篇博客:https://blog.csdn.net/rongtaoup/article/details/82183743
case when then else end 语句用于查询满足多种条件的情况,类似java中的if...else,还有的就是用于进行行转列的查询,这个是放在select 子句后面的,是充当的是字段的作用。
具体用法就是:分为两种,一种是简单的函数形式,另一种就是表达式的形式。
其含义解释:
简单的函数形式
case 字段 when 值 then 结果 else 其他情况 end;
表达式的形式
case when 字段=值(这里写表达式,例如 score=80) then 结果 else 其他情况 end;
简单的函数形式
select case score when 'a' then '优秀' else '良好' end from student;
表达式形式
select case when score between and 90 then '优秀' else '良好' end from student;
在case里面还可以嵌套子查询等复杂用法。
case when 可以把它当成一个字段,其实就是select 后面需要查询出来的一个字段,对其可以使用聚合函数,别名,去重,等操作。
mysql中case when then end的含义和用法的更多相关文章
- MySQL中case when的基本用法总结
MySQL中case when的基本用法总结原创Backcanhave7 最后发布于2018-12-06 15:14:15 阅读数 439 收藏展开MySQL中的case when有用两种用法,官方文 ...
- MySQL中 IFNULL、NULLIF和ISNULL函数的用法
mysql 中 ifnull().nullif().isnull()函数的用法讲解: 一.IFNULL(expr1,expr2)用法: 假如expr1不为NULL,则 IFNULL() 的返回值为ex ...
- MySQL中使用SHOW PROFILE命令分析性能的用法整理(配合explain效果更好,可以作为优化周期性检查)
这篇文章主要介绍了MySQL中使用show profile命令分析性能的用法整理,show profiles是数据库性能优化的常用命令,需要的朋友可以参考下 show profile是由Jerem ...
- mysql中bit_count和bit_or函数的含义
翻阅mysql手册时,看到有个示例使用了bit_or方法来去除重复的数据,一开始没看明白,后来看明白之后感觉非常巧妙.示例要实现的功能就是计算每月有几天有访问,先把示例摘录在这里. 1 2 3 4 5 ...
- mysql中 case when的使用
SELECT a.hsid, a.house_code, a.sale_date, a.pjid, COUNT( sdid ) AS num, b.hsid, b.pscid, b.hscode, b ...
- MySQL中CASE的使用
语法说明: 方式一: CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE ...
- MySql 中 case when then else end 的用法
解释: SELECT case -------------如果 when sex='1' then '男' ---------- ...
- MYSQL中case when then else end 用法
条件语句 delimiter \\CREATE PROCEDURE proc_if ()BEGIN declare i int default 0; if i = 1 THEN ...
- mysql中explain用法和结果的含义
explain select * from user explain select * from user explain extended select * from user explain e ...
随机推荐
- 文字和符号组合成图 Banner
springboot 启动 logo.... 文字符号组合成的图. <<< | /\\\ /--\\\ / \\\\ <*| /________\\\\ | ___ | | | ...
- Oracle 性能之 Enq: CF - contention
Oracle 性能之 Enq: CF - contention Table of Contents 1. 原因 2. 解决问题 2.1. 针对持有锁进程类型处理 2.1.1. 查看持有锁会话的进程类型 ...
- Steps 步骤条
引导用户按照流程完成任务的分步导航条,可根据实际应用场景设定步骤,步骤不得少于 2 步. 基础用法 简单的步骤条. 设置active属性,接受一个Number,表明步骤的 index,从 0 开始.需 ...
- linuxs上mono
当前,在Linux系统上架设ASP.NET网站.建设WEB应用工程项目已经在国内流行起来,而“Mono+Jexus”架构模式是Linux承载ASP.NET企业级应用的极为重要的架构方式,这种架构中,J ...
- brew update 很慢
brew使用国内镜像源 这里用中科大的,另外还有清华的可用 # 步骤一 cd $(brew --repo) git remote set-url origin https://mirrors.tuna ...
- java解析和组装json以及一些方法的理解
这是一个json格式的字符串 第一种情况(简单格式) String result = "{\"name\":\"小明\",\"age\&qu ...
- Void pointers in C
In this article we are learning about “void pointers” in C language. Before going further it will be ...
- [笔记] Delphi使用DUnitX做单元测试的简单例子
Delphi XE 提供了对DUnitX的支持,记录一个最简例子. 首先创建项目A,然后创建单元untCalc,代码如下: unit untCalc; interface type TCalc = c ...
- 利用python列出当前目录下的所有文件
问题 当一个目录下有很多文件夹或者文件,我们想分析各个文件的名字,这时就可以写一个函数,列出当前目录下所有文件名字. 代码 src_dir = r'./' # 源文件目录地址 def list_all ...
- Java多线程(3):wait()/notify()实例
下面是代码实例 public class WaitDemo implements Runnable { private Object lock; public WaitDemo(Object lock ...