返回顶部

收藏

mysql case when 示例

更多
/*

mysql> select * from sales;
+-----+------------+--------+--------+--------+------+------------+
| num | name       | winter | spring | summer | fall | category   |
+-----+------------+--------+--------+--------+------+------------+
|   1 | Java       |   1067 |    200 |    150 |  267 | Holiday    |
|   2 | C          |    970 |    770 |    531 |  486 | Profession |
|   3 | JavaScript |     53 |     13 |     21 |  856 | Literary   |
|   4 | SQL        |    782 |    357 |    168 |  250 | Profession |
|   5 | Oracle     |    589 |    795 |    367 |  284 | Holiday    |
|   6 | MySQL      |    953 |    582 |    336 |  489 | Literary   |
|   7 | Cplus      |    752 |    657 |    259 |  478 | Literary   |
|   8 | Python     |     67 |     23 |     83 |  543 | Holiday    |
|   9 | PHP        |    673 |     48 |    625 |   52 | Profession |
+-----+------------+--------+--------+--------+------+------------+
9 rows in set (0.01 sec)

mysql> SELECT name AS Name,
    -> CASE category
    -> WHEN 'Holiday' THEN 'Seasonal'
    -> WHEN 'Profession' THEN 'Bi_annual'
    -> WHEN 'Literary' THEN 'Random' END AS 'Pattern'
    -> FROM sales;
+------------+-----------+
| Name       | Pattern   |
+------------+-----------+
| Java       | Seasonal  |
| C          | Bi_annual |
| JavaScript | Random    |
| SQL        | Bi_annual |
| Oracle     | Seasonal  |
| MySQL      | Random    |
| Cplus      | Random    |
| Python     | Seasonal  |
| PHP        | Bi_annual |
+------------+-----------+
9 rows in set (0.00 sec)

*/
Drop table sales;

CREATE TABLE sales(
    num MEDIUMINT NOT NULL AUTO_INCREMENT,
    name CHAR(20),
    winter INT,
    spring INT,
    summer INT,
    fall INT,
    category CHAR(13),
    primary key(num)
)type=MyISAM;

insert into sales value(1, 'Java', 1067 , 200, 150, 267,'Holiday');
insert into sales value(2, 'C',970,770,531,486,'Profession');
insert into sales value(3, 'JavaScript',53,13,21,856,'Literary');
insert into sales value(4, 'SQL',782,357,168,250,'Profession');
insert into sales value(5, 'Oracle',589,795,367,284,'Holiday');
insert into sales value(6, 'MySQL',953,582,336,489,'Literary');
insert into sales value(7, 'Cplus',752,657,259,478,'Literary');
insert into sales value(8, 'Python',67,23,83,543,'Holiday');
insert into sales value(9, 'PHP',673,48,625,52,'Profession');

select * from sales;

SELECT name AS Name,
CASE category
WHEN 'Holiday' THEN 'Seasonal'
WHEN 'Profession' THEN 'Bi_annual'
WHEN 'Literary' THEN 'Random' END AS 'Pattern'
FROM sales;

标签:SQL,MySQL

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 刘莉莉 发表 2015-12-26 13:55:20 在系统中生成业务ID的几种方法
  2. 博主 发表 2016-12-02 17:36:11 数据库行列转换
  3. zhu329599788@126 发表 2017-03-14 09:08:31 mysql的SQL_CALC_FOUND_ROWS 使用
  4. hanze 发表 2017-07-19 15:10:14 linux shell小脚本分享
  5. OurMySQL 发表 2013-09-02 13:20:37 mysql sql优化之straight_join
  6. metaboy 发表 2013-11-06 07:45:23 关于子查询和连接的趣味小题目
  7. James Xiang 发表 2014-04-19 17:02:06 mysql不能正确导出sql解决方案
  8. 博主 发表 2015-06-23 15:16:18 Mysql的SQL模式
  9. 蓝鲸 发表 2017-10-27 03:08:55 像Excel一样使用SQL进行数据分析(2)
  10. OurMySQL 发表 2013-09-02 13:26:10 查看mysql实时运行sql的工具–orztop
  11. www.tonitech.com的站长 发表 2015-08-04 08:17:43 执行MySQL使用事务的方法
  12. Harries 发表 2016-03-13 19:56:49 最后1个月,赶快报名2016年MySQL技术嘉年华吧

发表评论