首页 > 数据库 >SQL语句之if,case

SQL语句之if,case

时间:2022-11-04 23:55:17浏览次数:43  
标签:case 语句 when mark score bool SQL 表达式

其他函数 、 case 语句

1. 聚合函数
max() , min() , avg() , sum() , count ()

2. if( bool表达式 , expr1 , expr2 )
如果 bool表达式 成立 (true) , 就返回 expr1 。 否则 如果 bool表达式 不成立 (false) , 就返回 expr2 。

类似于 java 语言中的 问号表达式 ( ? : )

select sid,cid, if(mark>=60,'及格','不及格') as '成绩' from score


3. ifnull ( expr1 , expr2 )
如果 expr1 不为null 就返回 expr1 自己。 否则 如果 expr1 为null , 就返回 expr2 。

select * from score;

update score set mark=null where sid=2001002 and cid='01'

alter table score
modify mark decimal(8,2)

select ifnull(mark,0) from score

5. isnull ( exp )
判断 表达式(或者列名) exp 是否为null 。 如果 为null ,就返回 1 (表示 : true) , 否则返回 0 (表示:false )

select * from score where mark is null

select * from score where isnull(mark)

6. case 语句
(1) 语法1 : 类似于 java 语言中的 switch

case 表达式exp
when 比较值1 then '选择的结果1'
when 比较值2 then '选择的结果2'
when 比较值3 then '选择的结果3'
when 比较值4 then '选择的结果4'
else '选择的结果5'
end

select

case cid
when '01' then '语文'
when '02' then '数学'
else '出错'
end

from score

(2) 语法2 : 类似于 java 语言中的 if

case
when bool表达式1 then '选择的结果1'
when bool表达式2 then '选择的结果2'
when bool表达式3 then '选择的结果3'
when bool表达式4 then '选择的结果4'
else '选择的结果5'
end

select sid,cid,
case
when mark >=80 then '优秀'
when mark >=60 then '及格'
else '不及格'
end as 'level'
from score

标签:case,语句,when,mark,score,bool,SQL,表达式
From: https://www.cnblogs.com/daimenglaoshi/p/16859478.html

相关文章

  • 【mysql】 窗口函数
    背景MySQL从8.0开始支持开窗函数,这个功能在大多商业数据库中早已支持,也叫分析函数。窗口函数分为静态窗口和滑动窗口,静态窗口的大小是固定的,滑动窗口的大小可以根据设置......
  • Mysql主从复制代码记录
    主机部分在数据库安装目录下的my.ini文件[mysqld]server-id=1log-bin=D:\mysql-5.6.36-winx64\data\mysqlbinbinlog-ignore-db=mysqlbinlog-do-db=mydb2binlog_format......
  • MySQL时间函数总结
    1.1获取日期、时间函数用法CURDATE(),CURRENT_DATE()返回当前日期,只包含年、月、日CURTIME(),CURRENT_TIME()返回当前时间,只包含时、分、秒NOW()/SYSDA......
  • 超详细javaweb项目搭建(零基础适合小白)基础javaweb前端项目实战【包含增删改查,mysql】
    首先,新建一个javaweb项目【前提已经下载tomcat,mysql,此实验idea版本为2022,其他版本可能位置不一样】File->New->Project 起一个项目名称(随便起就可以),点击Creat->new......
  • MySQL 按条件查询 2022/09/05
    ......
  • 校园社团活动管理系统(适合小白)基础javaweb前端项目实战【包含增删改查,mysql】一
    校园社团活动管理系统(20分)1、项目需求:校园社团作为高校课外活动的重要组成部分,发展十分迅速,也受到越来越多学生的欢迎,社团规模、数量等都在日益增长,社团活动也更为多样和......
  • python操作mysql数据库
    一、python连接MySQL####1.基本语法#(1)创建连接hostuserpassworddatabase这四个参数必须写conn=pymysql.connect(host="127.0.0.1",user="root",passw......
  • mysql基本操作
    一、权限操作#1、查询当前用户selectuser()#2、设置密码setpassword=password('123456')#3、给具体某个ip设置账号密码,用来访问数据库(公网ip)createuser'......
  • mysql查询时反应慢
    一、原因分析1.没有索引或者SQL没有命中索引导致索引失效2.单表数据量过多,导致查询遇到瓶颈。3.网络原因或者机器自身负载过高4.热点数据导致单点负载不均衡5、I/O吞......
  • mysql索引
    一、索引概念索引是帮助MySql高效获取数据的数据结构。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用数据,这样就可以在这些数据结......