CREATE TABLE `lee` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`name` char(20) DEFAULT NULL,

`birthday` datetime DEFAULT NULL,

PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8

数据插入:

insert into lee(name,birthday) values ('sam','1990-01-01');

insert into lee(name,birthday) values ('lee','1980-01-01');

insert into lee(name,birthday) values ('john','1985-01-01');

使用case when语句

1。

select name,

case

when birthday

when birthday>'1988' then 'yong'

else 'ok' END YORN

from lee;

2。

select NAME,

case name

when 'sam' then 'yong'

when 'lee' then 'handsome'

else 'good' end

from lee;

当然了case when语句还可以复合

3。

select name,birthday,

case

when birthday>'1983' then 'yong'

when name='lee' then 'handsome'

else 'just so so ' end

from lee;

在这里用sql语句进行日期比较的话,需要对年加引号。要不然可能结果可能和预期的结果会不同。我的mysql版本5.1

当然也可以用year函数来实现,以第一个sql为例

select NAME,

CASE

when year(birthday)>1988 then 'yong'

when year(birthday)<1980 then 'old'

else 'ok' END

from lee;

create table penalties

(

paymentno INTEGER not NULL,

payment_date DATE not null,

amount DECIMAL(7,2) not null,

primary key(paymentno)

)

insert into penalties values(1,'2008-01-01',3.45);

insert into penalties values(2,'2009-01-01',50.45);

insert into penalties values(3,'2008-07-01',80.45);

1.#对罚款登记分为三类,第一类low,包括大于0小于等于40的罚款,第二类moderate大于40

#到80之间的罚款,第三类high包含所有大于80的罚款。

2.#统计出属于low的罚款编号。

第一道题的解法与上面的相同

select paymentno,amount,

case

when amount>0 and amount<=40 then 'low'

when amount>40 and amount<=80 then 'moderate'

when amount>80 then 'high'

else 'incorrect' end lvl

from `penalties`

2.#统计出属于low的罚款编号。重点看这里的解决方法

方法1.

select paymentno,amount

from `penalties`

where case

when amount>0 and amount<=40 then 'low'

when amount>40 and amount<=80 then 'moderate'

when amount>80 then 'high'

else 'incorrect' end ='low';

方法2

select *

from (select paymentno,amount,

case

when amount>0 and amount<=40 then 'low'

when amount>40 and amount<=80 then 'moderate'

when amount>80 then 'high'

else 'incorrect' end lvl

from `penalties`) as p

where p.lvl='low';

MySQL存储过程 CASE语句

MySQL存储过程  CASE语句 除了IF语句,MySQL提供了一个替代的条件语句CASE. MySQL CASE语句使代码更加可读和高效. CASE语句有两种形式:简单的搜索CASE语句. 简单C ...

php代码优化,mysql语句优化,面试需要用到的

首先说个问题,就是这些所谓的优化其实代码标准化的建议,其实真算不上什么正真意义上的优化,还有一点需要指出的为了一丁点的性能优化,甚至在代码上的在一次请求上性能提升万分之一的所谓就去大面积改变代码习惯, ...

mysql语句:批量更新多条记录的不同值&lbrack;转&rsqb;

mysql语句:批量更新多条记录的不同值 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: 帮助 1 UPDATE mytable SET myfield = 'value' WHERE ...

mysql语句:批量更新多条记录的不同值

mysql更新语句很简单,更新一条数据的某个字段,一般这样写: 1 UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_va ...

在mysql语句中为什么要加反引号

在MySQL语句中我们有时候经常会遇到反引号(``),刚开始的时候不知道什么意思,他是什么作用呢? Select * from `member` order by posts desc limit 0 ...

常用的MySQL语句写法

常用的MySQL语句写法 MySQL的SQL语句写法,除了那些基本的之外,还有一些也算比较常用的,这里记录下来,以便以后查找.     好记性不如烂笔头,这话说的太有道理了,一段时间不写它,还真容易忘 ...

Mysql when case 批量更新

UPDATE categories SET display_order = CASE id WHEN 1 THEN 3 WHEN 2 THEN 4 WHEN 3 THEN 5 END WHERE id ...

数据库系统(六)---MySQL语句及存储过程

一.DDL.DML.DCL常用语句 1.DDL(Data Definition Language)数据库定义语言 (1)数据库模式定义 #创建数据库 create database if exsite ...

随机推荐

实现iOS图片等资源文件的热更新化&lpar;三&rpar;&colon;动态的资源文件夹

简介 此文,将尝试动态从某个不确定的文件夹中加载资源文件.文章,会继续完善自定义的 imageNamed 函数,并为下一篇文章铺垫. 这么做的意义 正如我们经常所说的那样,大多数情景知道做事的意义往往 ...

css3折叠效果

在开发过程中,经常会遇到一些交互效果,今天所联系的便是一个类似折纸的折叠效果,查看效果. 说到折纸,我们先看下图 这是我第一时间想到的大体思路,如果能让这6个面连续的变化角度到0不就可以了吗,运用cs ...

ks使用lvm分区&comma;ks启动

part /boot -fstype ext3 -size= part swap -size= part pv. -size= -grow volgroup vg_root pv. logvol / ...

Firefox-常用扩展

抓包: HttpFox,相比 Firebug 在页面跳转或刷新时依旧保持原有数据 常用User-Agent模拟: User Agent Switcher 更改请求头: ModifyHeaders 更改 ...

Nginx 403 error

nginx 的 403 Forbidden errors 表示你在请求一个资源文件但是nginx不允许你查看.403 Forbidden 只是一个HTTP状态码,像404,200一样不是技术上的错误. ...

Java XML解析器

使用Apache Xerces解析XML文档 一.技术概述 在用Java解析XML时候,一般都使用现成XML解析器来完成,自己编码解析是一件很棘手的问题,对程序员要求很高,一般也没有专业厂商或者开源组 ...

关于JQuery获取宽度和高度在chrome和IE下的不同

之前写了一个关于滚动条的东西,可是在写的时候发现JQuery在获取宽度和高度时在不同浏览器中是不一样的,下面发一下代码给给位看官先展示一下: $(function(){ $("#main&q ...

&lbrack;Machine Learning&rsqb; 浅谈LR算法的Cost Function

了解LR的同学们都知道,LR采用了最小化交叉熵或者最大化似然估计函数来作为Cost Function,那有个很有意思的问题来了,为什么我们不用更加简单熟悉的最小化平方误差函数(MSE)呢? 我个人理解 ...

&lbrack;SDOI2014&rsqb;数数

题解: 做过ac自动机上dp的这题应该就很容易想到了 首先在ac自动机上搞dp 表示当前考虑了i位,在自动机的j位上 然后转移就可以了 考虑限制 显然是一个数位dp 考虑位数小于n显然满足要求 考虑位 ...

BestCoder Round &num;27

Jump and Jump... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

bbsmax mysql_mysql 语句case when相关推荐

  1. Linux Shell脚本入门教程系列之(十三)Shell分支语句case … esac教程

    本文是Linux Shell脚本系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 上一篇之 后,分支语句非常实用,基本上高级语言都支持分支语句(pytho ...

  2. SQL语句--CASE函数写法的简单举例,及应用

    SQL语句–CASE函数写法的简单举例,及应用 ---case函数的基本结构:case when...then...else... ----可以写也可以不写,按实际需求end [举个栗子_1] eg1 ...

  3. Linux Shell编程语句case

    Linux Shell编程case语句 case语句 case语句适用于需要进行多重分支的应用情况. case分支语句的格式如下:case $变量名 in模式1)命令序列1;;模式2)命令序列2;; ...

  4. case when mysql_mysql条件语句case when的实例

    本节学习mysql中case when条件语句的一些实例. 1,表的创建 复制代码 代码示例: CREATE TABLE `lee` ( `id` int(10) NOT NULL AUTO_INCR ...

  5. C 语言中的 switch 语句 case 后面是否需要加大括号

    事件原由为编辑器的自动缩进,当 case 换行后不自动缩进. 于是在在想可以可否在 case 后面再大括号,让其自动缩进. 查了资料,发现 case 是可以加大括号的,相当于代码块. 而且还有另外一个 ...

  6. sql union 语句 case语句

    1:Union语句: 把两个结果合为一体(但是完全重复的数据会去掉) Eg1: select name, age, '学生无工资' from student        union         ...

  7. SqlServer中 查询语句 case when 用法

    数据库表: pic_table pic state time 999cb09abcbb4ec08e7ddc5ded8301e3测试.jpeg 0 2018-07-02 14:09:01.000 604 ...

  8. sql语句case when常用查询总结

    一.case when 语句语法逻辑 case when 是mySQL里面的控制流语句,和if-then-的分支判断逻辑很相似. case when语句有两种: (1)简单case when (2)c ...

  9. sql语句 case

    case: SELECT stdname, max( CASE WHEN stdsubject = '语文' THEN result ELSE 0 END) "语文", max( ...

  10. SqlServer中常见的语法运用Begin...End\IF条件语句\IF Exists条件语句检测数据是否存在\While循环语句\Case语句执行分之判断\Try...Catch异常处理

    Begin...End Begin...End 是主要用来控制程序块语句中的批处理 语法: Begin {代码块} End 例: go declare @name varchar(50) declar ...

最新文章

  1. 关于 linux io_uring 性能测试 及其 实现原理的一些探索
  2. vsftp 虚拟用户测试
  3. 【高校宿舍管理系统】第一章 建立数据库以及项目框架搭建
  4. 荣耀平板5升级鸿蒙,荣耀能否“升级”鸿蒙?赵明正式确认:华为做得好会考虑采用!...
  5. 什么是类加载,又有哪些类加载器你真的了解吗?
  6. 永中office属于职称计算机吗,2017职称计算机考试WPS_Office检测练习及答案13-中华考试网...
  7. 10条有用的可用性结论和指南
  8. php array 插值,PHP中的关联数组的插值(双引号字符串)
  9. 重新注册所有dll文件
  10. 关于QTTabBar的使用
  11. 计算机智能化弱电设备发展趋势,中国弱电智能化发展趋势
  12. 平均年薪50W+,AI算法岗凭什么?附2020高薪岗位十五强
  13. 用PS快速给图片添加逼真彩虹效果
  14. excel如何生成各种图
  15. 根据身份证解析出生年月
  16. Speedoffice(excel)如何利用MIN函数求最小值
  17. android chrome无法运行,Android 测试 Chrome 浏览器能正常启动 Chrome 浏览器,但是不能进行操作,求大神!!...
  18. Android Framework:深入探索 AIDL 数据流动
  19. C 程序设计语言——第四章练习题
  20. 想要秒变“优牙人”,只需要uya.ren

热门文章

  1. (七)视频背景移除/去背景/换背景/抠图/抠像代码示例:实时抠图、实时抠像、人像去背景、背景消除
  2. SSM房屋租赁管理系统
  3. 手机伪原创视频处理工具 视频md5修改器ios
  4. Unix和Windows比较
  5. MCMC蒙特卡洛算法
  6. HFSS - GSM 900 和 DCS 1800 双频PIFA天线的设计与仿真
  7. 全国地级市坐标、名称、编码获取 / 全球城市坐标位置
  8. eclipse中文版
  9. 计算机丢失msvcrt.dll,msvcrt.dll修复工具
  10. 2023王道计算机考研数据结构第一章-绪论