MySQL的CASEWHEN语句的几个使用实例
使用CASEWHEN进行字符串替换处理
9rowsinset(0.01sec)
SELECTnameASName,
CASEcategory
WHEN"Holiday"THEN"Seasonal"
WHEN"Profession"THEN"Bi_annual"
WHEN"Literary"THEN"Random"ENDAS"Pattern"
FROMsales;
9rowsinset(0.00sec)
CREATETABLEsales(
numMEDIUMINTNOTNULLAUTO_INCREMENT,nameCHAR(20),winterINT,springINT,
summerINT,fallINT,categoryCHAR(13),primarykey(num)
)ENGINE=MyISAM;
insertintosalesvalue(1,"Java",1067,200,150,267,"Holiday");
insertintosalesvalue(2,"C",970,770,531,486,"Profession");
insertintosalesvalue(3,"JavaScript",53,13,21,856,"Literary");
insertintosalesvalue(4,"SQL",782,357,168,250,"Profession");
insertintosalesvalue(5,"Oracle",589,795,367,284,"Holiday");
insertintosalesvalue(6,"MySQL",953,582,336,489,"Literary");
insertintosalesvalue(7,"Cplus",752,657,259,478,"Literary");
insertintosalesvalue(8,"Python",67,23,83,543,"Holiday");
insertintosalesvalue(9,"PHP",673,48,625,52,"Profession");
简单语句
SELECTCASEWHEN10*2=30THEN"30correct"
WHEN10*2=40THEN"40correct"
ELSE"Shouldbe10*2=20"
ENDAS`result`;
多重表达式
WHEN20THEN"20correct"
WHEN30THEN"30correct"
WHEN40THEN"40correct"
ELSE"Noresults"
ENDAS`result`;
在SELECT查询中使用CASEWHEN
IDSMALLINTNOTNULLAUTO_INCREMENTPRIMARYKEY,
NameVARCHAR(60)NOTNULL,
NumDisksTINYINTNOTNULLDEFAULT1,
RatingIDVARCHAR(4)NOTNULL,
StatIDCHAR(3)NOTNULL
)ENGINE=INNODB;
INSERTINTODVDs(Name,NumDisks,RatingID,StatID)
VALUES("Christmas",1,"NR","s1"),("Doc",1,"G", "s2"),("Africa",1,"PG","s1"),("Falcon",1,"NR","s2"),
("Amadeus",1,"PG","s2"),("Show",2,"NR","s2"),("View",1,"NR","s1"),("Mash",2,"R", "s2");
SELECTName,RatingIDASRating,
CASERatingID
WHEN"R"THEN"Under17requiresanadult."
WHEN"X"THEN"Noone17andunder."
WHEN"NR"THEN"Usediscretionwhenrenting."
ELSE"OKtorenttominors."
ENDASPolicy
FROMDVDs
ORDERBYName;
8rowsinset(0.01sec)
相关文章
- 深入研究 MySQL 连接优化指南(mysql连接优化)
- MySQL中使用的条件语句及其应用(mysql的条件语句)
- MySQL 数据库一致性检查的重要性(mysql一致性检查)
- MySQL注释符号使用介绍(mysql的注释符号)
- MySQL数据库入门知识教学(mysql教学)
- 外用单引号危害MySQL注入攻击(mysql单引号注入)
- 数据MySQL如何根据分组取出第一条数据(mysql分组取第一条)
- 使用命令行启动MySQL:一步搞定(在命令行启动mysql)
- 与应用MySQL索引:结构与应用探究(mysql索引的结构)
- MySQL入门指南:简单易懂的使用教程(如何mysql)
- 优化MySQL多实例:实现性能优化的新方法(mysql多实例性能)
- MySQL中使用汉字拼音实现数据排序(mysql汉字拼音排序)
- MySQL 正版:正确使用正版锁定商业价值(mysql 正版)
- MySQL技巧:彻底删除重复数据(删除重复数据mysql)
- MySQL玩转AWK编写脚本,实现数据处理快感(awk mysql)
- MySQL如何使用XML进行查询(mysql中xml查询)
- MySQL中ext的使用方法介绍(mysql中ext)
- MySQL多版本存在bug问题(mysql个版本bug)
- MySQL表数据列转换为行实现拼接(mysql两表列转行)
- 教你如何使用CMD远程登录MySQL(cmd远程登录mysql)
- MySQL查询重命名表或字段,使用别名AS优化查询结果(mysql 中别名as)
- MySQL和Zabbix的高效管理策略(mysql zabbix)
- MySQL无法在指定范围内进行操作(mysql 不在范围内)
- MySQL在不同数量级下的表现(mysql不同数量)
- MySQL实现数据同步,表结构无需改变(MySQL不分表同步)
- 使用MySQL,下载和解压的方法(mysql下载解压怎么用)
- MySQL中使用两数相加函数(mysql两数相加函数)