码迷,mamicode.com
首页 > 数据库 > 详细

sql中的case when语句

时间:2015-03-05 22:18:29      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:

1.在where子句中:

 1 CREATE  TABLE `hello`.`sometbl` (
 2 
 3   `id` INT NOT NULL AUTO_INCREMENT ,
 4 
 5   `a` VARCHAR(45) NULL ,
 6 
 7   `b` VARCHAR(45) NULL ,
 8 
 9   `c` VARCHAR(45) NULL ,
10 
11   PRIMARY KEY (`id`) ,
12 
13   UNIQUE INDEX `id_UNIQUE` (`id` ASC) );
1 INSERT INTO `hello`.`sometbl` (`a`, `b`, `c`) VALUES (1, 1, 0);
2 
3 INSERT INTO `hello`.`sometbl` (`b`, `c`) VALUES (1, 1);
4 
5 INSERT INTO `hello`.`sometbl` (`a`, `c`) VALUES (1, 1);
6 
7 INSERT INTO `hello`.`sometbl` (`b`) VALUES (1);

查询a,b,c中有两个满足=1条件的记录

SELECT * FROM hello.sometbl where ((case when a=1 then 1 else 0 end)
+(case when b=1 then 1 else 0 end)
+(case when c=1 then 1 else 0 end))=2;

 

2。在select中作为一列

id为1,2,3,4时分别输出,一,二,三,四

SELECT id,case when id=1 then 
when id=2 then 
when id=3 then 
when id=4 then 
else 其它 end 中文数字
FROM hello.sometbl;

输出

技术分享

 

sql中的case when语句

标签:

原文地址:http://www.cnblogs.com/rain-in-sun/p/4316688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!