mysql__CASE WHEN进行字符串替换处理

使用CASE WHEN进行字符串替换处理




 
03 mysql> select * from sales;
04 +-----+------------+--------+--------+--------+------+------------+
05 | num | name       | winter | spring | summer | fall | category   |
06 +-----+------------+--------+--------+--------+------+------------+
07 |   1 | Java       |   1067 |    200 |    150 |  267 | Holiday    |
08 |   2 | C          |    970 |    770 |    531 |  486 | Profession |
09 |   3 | JavaScript |     53 |     13 |     21 |  856 | Literary   |
10 |   4 | SQL        |    782 |    357 |    168 |  250 | Profession |
11 |   5 | Oracle     |    589 |    795 |    367 |  284 | Holiday    |
12 |   6 | MySQL      |    953 |    582 |    336 |  489 | Literary   |
13 |   7 | Cplus      |    752 |    657 |    259 |  478 | Literary   |
14 |   8 | Python     |     67 |     23 |     83 |  543 | Holiday    |
15 |   9 | PHP        |    673 |     48 |    625 |   52 | Profession |
16 +-----+------------+--------+--------+--------+------+------------+
17 9 rows in set (0.01 sec)
18  
19 mysql> SELECT name AS Name,
20     -> CASE category
21

    -> WHEN "Holiday" THEN "Seasonal"//把sales表字段category中Holiday值替换为seasonal

22     -> WHEN "Profession" THEN "Bi_annual"
23     -> WHEN "Literary" THEN "Random" END AS "Pattern"//查询的结果命名为一个新的字段为pattern
24     -> FROM sales;
25 +------------+-----------+
26 | Name       | Pattern   |
27 +------------+-----------+
28 | Java       | Seasonal  |
29 | C          | Bi_annual |
30 | JavaScript | Random    |
31 | SQL        | Bi_annual |
32 | Oracle     | Seasonal  |
33 | MySQL      | Random    |
34 | Cplus      | Random    |
35 | Python     | Seasonal  |
36 | PHP        | Bi_annual |
37 +------------+-----------+
38 9 rows in set (0.00 sec)
39  
40  
41 */
42 Drop table sales;
43    
44 CREATE TABLE sales(
45     num MEDIUMINT NOT NULL AUTO_INCREMENT,
46     name CHAR(20),
47     winter INT,
48     spring INT,
49     summer INT,
50     fall INT,
51     category CHAR(13),
52     primary key(num)
53 )type=MyISAM;
54  
55  
56 insert into sales value(1, 'Java', 1067 , 200, 150, 267,'Holiday');
57 insert into sales value(2, 'C',970,770,531,486,'Profession');
58 insert into sales value(3, 'JavaScript',53,13,21,856,'Literary');
59 insert into sales value(4, 'SQL',782,357,168,250,'Profession');
60 insert into sales value(5, 'Oracle',589,795,367,284,'Holiday');
61 insert into sales value(6, 'MySQL',953,582,336,489,'Literary');
62 insert into sales value(7, 'Cplus',752,657,259,478,'Literary');
63 insert into sales value(8, 'Python',67,23,83,543,'Holiday');
64 insert into sales value(9, 'PHP',673,48,625,52,'Profession');
65  
66 select * from sales;
67  
68  
69 SELECT name AS Name,
70 CASE category
71 WHEN "Holiday" THEN "Seasonal"
72 WHEN "Profession" THEN "Bi_annual"
73 WHEN "Literary" THEN "Random" END AS "Pattern"
74 FROM sales;

SELECT num,name AS Name, case category
when "Holiday" then "1111"    #把categroy字段中的Holiday替换为1111
WHEN "Profession" THEN "2222" #把categroy字段中的Holiday替换为2222
WHEN "Literary" THEN "3333"   #把categroy字段中的Holiday替换为3333
END AS "从新命名标题"         #把categroy重新命名为'从新命名标题'
FROM sales;




转载于:https://my.oschina.net/u/1244264/blog/150659

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值