文档章节

mysql 范围统计,并且行转列

小张525
 小张525
发布于 2016/12/09 21:19
字数 236
阅读 33
收藏 0
-- 创建数据库
create table score(id int not null auto_increment,score int not null,primary key (id))engine=myisam;
-- 插入数据
insert into score(`score`) values(100),(200),(200),(100),(300),(400),(500),(300),(200),(400),(500),(200),(500),(300);

-- 范围查询,并且行转列
select 
	sum(if(a.score_class = 1,1,0)) as w_1,
	sum(if(a.score_class =2 ,1,0)) as w_2,
    sum(if(a.score_class = 3,1,0)) as w_3,
	sum(if(a.score_class =4 ,1,0)) as w_4,
    sum(if(a.score_class = 5,1,0)) as w_5

  from (select id,score,
(case 
when  score >=100 and score <=200 then 1
when  score >200  and score <=300 then 2
when  score >300  and score <=400 then 3
when  score >400  and score <=500 then 4
else 5
end) as  score_class from score) as a;

-- output
+------+------+------+------+------+
| w_1  | w_2  | w_3  | w_4  | w_5  |
+------+------+------+------+------+
|    7 |    3 |    2 |    3 |    0 |
+------+------+------+------+------+
1 row in set (0.00 sec)
-- explain 
+----+-------------+------------+------+---------------+------+---------+------+------+-------+
| id | select_type | table      | type | possible_keys | key  | key_len | ref  | rows | Extra |
+----+-------------+------------+------+---------------+------+---------+------+------+-------+
|  1 | PRIMARY     | <derived2> | ALL  | NULL          | NULL | NULL    | NULL |   15 | NULL  |
|  2 | DERIVED     | score      | ALL  | NULL          | NULL | NULL    | NULL |   15 | NULL  |
+----+-------------+------------+------+---------------+------+---------+------+------+-------+

-- index

mysql> show index from score;
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| score |          0 | PRIMARY  |            1 | id          | A         |          15 |     NULL | NULL   |      | BTREE      |         |               |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
1 row in set (0.00 sec)




 

© 著作权归作者所有

共有 人打赏支持
小张525
粉丝 6
博文 103
码字总数 33503
作品 0
乌鲁木齐
程序员
MySQL优化 - 性能分析与查询优化

MySQL优化 - 性能分析与查询优化 优化应贯穿整个产品开发周期中,比如编写复杂SQL时查看执行计划,安装MySQL服务器时尽量合理配置(见过太多完全使用默认配置安装的情况),根据应用负载选择合...

杰思
2017/08/03
0
0
(转)学习MySQL优化原理,这一篇就够了!

原文:https://mp.weixin.qq.com/sbiz=MzI4NTA1MDEwNg==&mid=2650763421&idx=1&sn=2515421f09c150d31e8d1b8b59243bd5&chksm=f3f9c508c48e4c1ea64b00b25c226efa2b9e32910f83290bf383ce0d16ee0......

weixin_39152648
05/09
0
0
高性能MYSQL读书要点摘录_3_Schema与数据类型优化

一 选择优化的数据类型 更小的通常更好:占用更少的磁盘,内存 ,CPU。同时要确保没有低估要存储值的范围。 简单就好:简单的数据类型操作通常需要更少的CPU周期。比如 整形比字符操作的代价...

robin-yao
2016/01/03
146
0
MySQL explain详解

例子 id SQL执行的顺序的标识 select_type 查询中每个select子句的类型 (1) SIMPLE(简单SELECT,不使用UNION或子查询等) (2) PRIMARY(查询中若包含任何复杂的子部分,最外层的select被标记为P...

乾坤刀
07/10
0
0
MySQL Schema与数据类型的优化

选择优化的数据类型: 1、 更小的通常更好: 一般情况下,应该尽量使用可以正确存储数据的最小数据类型。更小的数据类型通常更快,因为他们占用更少的磁盘,内存和cpu缓存,并且处理时需要的...

jasonccs
2017/10/27
0
1

没有更多内容

加载失败,请刷新页面

加载更多

一个可能的NEO链上安全随机数解决方案

0x00 困境 链上安全随机数生成应该算是一个比较蛋疼的问题,哪怕你的系统再牛逼,合约程序困在小小的虚拟机里,哪怕天大的本事也施展不开。 更悲催的是,交易执行的时候,是在每一个节点都执...

暖冰
今天
1
0
【大福利】极客时间专栏返现二维码大汇总

我已经购买了如下专栏,大家通过我的二维码你可以获得一定额度的返现! 然后,再给大家来个福利,只要你通过我的二维码购买,并且关注了【飞鱼说编程】公众号,可以加我微信或者私聊我,我再...

飞鱼说编程
今天
1
0
Spring5对比Spring3.2源码之容器的基本实现

最近看了《Spring源码深度解析》,该书是基于Spring3.2版本的,其中关于第二章容器的基本实现部分,目前spring5的实现方式已有较大改变。 Spring3.2的实现: public void testSimpleLoad(){...

Ilike_Java
今天
1
0
【王阳明心学语录】-001

1.“破山中贼易,破心中贼难。” 2.“夫万事万物之理不外于吾心。” 3.“心即理也。”“心外无理,心外无物,心外无事。” 4.“人心之得其正者即道心;道心之失其正者即人心。” 5.“无...

卯金刀GG
今天
2
0
OSChina 周三乱弹 —— 我们无法成为野兽

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ _刚刚好: 霸王洗发水这波很骚 手机党少年们想听歌,请使劲儿戳(这里) hahahahahahh @嘻酱:居然忘了喝水。 让你喝可乐的话, 你准忘不了...

小小编辑
今天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部