网站制作学习网→http://www.forasp.cn/→正文:mysql select case
字体:

mysql select case

http://www.forasp.cn/ 2023/3/25 17:05:07  点击:不统计

http://%77%77%77%2E%66网站制作%6F学习网%72%61%73%70%2E%63%6E

在使用 mysql时,发现有和php一样的select case 语法,今天学习一下。
mysql select case 有两种用法,一种是 值判断,一种是条件判断,我么通过实际案例表示
 
我们假定 以学生分数判断为例子,有下面一个表:
student_score表  以及内容
+------+--------+------------+-------+
| id   | name   | class_name | score |
+------+--------+------------+-------+
|    1 | 张三   | 数学       |    70 |
|    2 | 李四   | 语文       |    81 |
|    3 | 王武   | 数学       |    98 |
|    4 | 张三   | 语文       |    56 |
+------+--------+------------+-------+
 
我么先看第一种查询 值判断 select case方式,直接看sql语句:
select * 
,CASE score
when 98 THEN "优秀"
when 70 THEN "可以"
when 81 THEN "良好"
when 56 THEN "不及格"
ELSE '其他'
END "评价"
from stuedent_score;
运行结果如下:
+------+--------+------------+-------+-----------+
| id   | name   | class_name | score | 评价      |
+------+--------+------------+-------+-----------+
|    1 | 张三   | 数学       |    70 | 可以      |
|    2 | 李四   | 语文       |    81 | 良好      |
|    3 | 王武   | 数学       |    98 | 优秀      |
|    4 | 张三   | 语文       |    56 | 不及格    |
+------+--------+------------+-------+-----------+
说明一下,这里直接拿 字段的值做为判读条件,输出对应的内容,如果是字符串 则需要加''引号 引起来,ELSE 里面的其他没有值,则无输出
END 后面的为命名的列名称
 
 
我们看第二种条件判断形式的select case mysql判断,直接看sql 如下:
select * 
,CASE 
when score>90 THEN "优秀"
when score>80 THEN "良好"
when score>70 THEN "可以"
when score<60 THEN "不及格"
ELSE "其他"
END "评价"
from stuedent_score 
输出结果:
+------+--------+------------+-------+-----------+
| id   | name   | class_name | score | 评价      |
+------+--------+------------+-------+-----------+
|    1 | 张三   | 数学       |    70 | 其他      |
|    2 | 李四   | 语文       |    81 | 良好      |
|    3 | 王武   | 数学       |    98 | 优秀      |
|    4 | 张三   | 语文       |    56 | 不及格    |
+------+--------+------------+-------+-----------+
说明一下 ,这里是通过字段大小判断来进行的。需要注意的是,如果为Null 则通过 when score IS NULL THEN "是Null" 进行判断。
 
 
以上就是两种mysql select case的使用方法

学习www.网for站asp制.cn作

·上一篇:mysql 删除/清除 binlog >>    ·下一篇:mysql distinct group by 区别 >>
推荐文章
最新文章