MySQL 如何利用一条语句实现类似于if-else条件语句的判断
一、 编写一条update语句实现商品涨价,具体规则如下
1、99元以内,提价20%
2、100-999元之间,提价10%
3、1000-1999之间,提价5%
4、其他提价2%
update goods
set price = (
case
when price between 0 and 99 then price * 1.2
when price between 100 and 999 then price * 1.1
when price between 1000 and 1999 then price * 1.05
when price > 1999 then price * 1.02
end);
select * from goods;
二、 编写一条select语句,实现如下效果
学号 姓名 分数 等级
-------------------------------------------------
1 张三 86 良好
2 李四 98 优秀
3 王五 72 及格
4 那六 69 及格
5 小幺 56 不及格
规则如下:
1、>=90:优秀
2、>=80:良好
3、>=60:及格
4、<60:不及格
select id as 学号, name as 姓名, score as 分数,
(
case
when score >= 90 then '优秀'
when score >= 80 and score < 90 then '良好'
when score >= 60 and score < 80 then '及格'
when score < 60 then '不及格'
end
)
as 等级
from scores;
MySQL 如何利用一条语句实现类似于if-else条件语句的判断的更多相关文章
- shell脚本中的case条件语句介绍和使用案例
#前言:这篇我们接着写shell的另外一个条件语句case,上篇讲解了if条件语句.case条件语句我们常用于实现系统服务启动脚本等场景,case条件语句也相当于if条件语句多分支结构,多个选择,ca ...
- javascript语句——条件语句、循环语句和跳转语句
× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文 ...
- vue条件语句、循环语句、计算属性、侦听器监听属性
因为 v-if 和v-for是一个指令,所以必须将它添加到一个元素上.但是如果想切换多个元素呢?此时可以把一个 <template> 元素当做不可见的包裹元素,并在上面使用 v-if.最终 ...
- 『无为则无心』Python基础 — 13、Python流程控制语句(条件语句)
目录 1.流程控制基本概念 2.选择结构(条件语句) (1)条件语句概念 (2)if语句语法 (3)if...else...语句 (4)多重判断 (5)if语句嵌套 3.应用:猜拳游戏 4.三元运算符 ...
- JavaScript条件语句4--分支语句--if
JavaScript条件语句--分支语句 学习目标 1.掌握条件语句if 2.掌握prompt()的应用 3.掌握alert的应用 If语句 语法一: If(condition){ statement ...
- django之创建第5个项目-条件语句
1.index <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- Python—变量,条件语句,while循环,运算符,字符串等
Python初识以及变量: 变量名:——字母 ——数字 ——下划线[见名识意] (PS:数字不能开头:不能是关键字:最好不能和python内置的东西重复) ##################### ...
- 点评阿里JAVA手册之MySQL数据库 (建表规约、索引规约、SQL语句、ORM映射)
下载原版阿里JAVA开发手册 [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文内容:MySQL数据库 (建表规约.索引规约.SQL语句.ORM映 ...
- [mysql] 查询前几条记录
From: http://www.cnblogs.com/xuxm2007/archive/2010/11/16/1878211.html SELECT * FROM table LI ...
随机推荐
- EF检索中文失败的解决办法
1. MYSQL: 保证所有的的列都是UTF8格式. 2. VS2010: 在data server建立连接时,选择advance,将chracterset设成utf8,这样在VS2010里查看和更改 ...
- RocketMQ综述(未完成)
RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 1.能够保证严格的消息顺序 2.提供丰富的消息拉取模式 3.高效的订阅者水平扩展能力 4.实时的消息订阅机制 5.亿级消息堆积能力 ...
- [转]AngularJS ui-router (嵌套路由)
本文转自:http://www.oschina.net/translate/angularjs-ui-router-nested-routes http://www.codeproject.com/A ...
- COOKIE和session的机制详解
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...
- 绕过云盾找真实IP-找真实IP-绕过CDN
目标站:www.chinaparkview.cn 云盾挡着了 查一下历史IP 查出3月9号的IP是103.249.104.114 当然查出来的不一定准确 修改本地host文件 PS:不要加http 然 ...
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x2 】
Medium完整代码: <?php if (isset($_GET['Change'])) { // Checks the http referer header if ( eregi ( &q ...
- ffmpeg 和 x264的参数对照
ffmpeg 和 x264的参数对照 x264 ffmpeg 说明 命令行 字段 命令行 字段 qp qp_constant cqp cqp 固定量化因子.取值范围0到51. 经常取值在20-40 ...
- C. Magic Five
C. Magic Five Time Limit : 2000/1000ms (Java/Other) Memory Limit : 524288/262144K (Java/Other) Tot ...
- Log4J是Apache组织的开源一个开源项目,通过Log4J,可以指定日志信息输出的目的地,如console、file等。Log4J采用日志级别机制,请按照输出级别由低到高的顺序写出日志输出级别。
Log4J是Apache组织的开源一个开源项目,通过Log4J,可以指定日志信息输出的目的地,如console.file等.Log4J采用日志级别机制,请按照输出级别由低到高的顺序写出日志输出级别. ...
- (转)memcache、redis缓存
memcache原理.内存模型: http://www.csdn.net/article/2016-03-16/2826609 redis原理: http://baike.baidu.com/link ...