文档章节

mysql 范围统计,并且行转列

小张525
 小张525
发布于 2016/12/09 21:19
字数 236
阅读 32
收藏 0
点赞 0
评论 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
博文 59
码字总数 32032
作品 0
乌鲁木齐
程序员
MySQL优化 - 性能分析与查询优化

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

杰思 ⋅ 2017/08/03 ⋅ 0

(转)学习MySQL优化原理,这一篇就够了!

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

weixin_39152648 ⋅ 05/09 ⋅ 0

优化数据库结构

7.4. 优 化数据库结构 7.4.1. 设计选择 7.4.2. 使你的数据尽可能小 7.4.3. 列索引 7.4.4. 多列索引 7.4.5. MySQL如何使用索引 7.4.6. MyISAM键高速缓冲 7.4.7. MyISAM索引统计集合 7.4.8. M...

企图穿越 ⋅ 2010/02/21 ⋅ 0

高性能MYSQL读书要点摘录_3_Schema与数据类型优化

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

robin-yao ⋅ 2016/01/03 ⋅ 0

高性能mysql读书笔记之二 – 架构优化和索引

第三章 架构优化和索引 第三章的主要是说合理使用不同的数据类型和索引。主要需要注意的内容有如下: 1. 通用原则 1.1. 数据类型更小通常更好。 1.2. 数据类型越简单越好 1.3. 尽量避免使用N...

xrzs ⋅ 2012/12/01 ⋅ 0

[转]关于mysql中explain的那些事儿

explain语法 有两种用法:1.EXPLAIN tbl_name2.EXPLAIN [EXTENDED] SELECT select_options 为了更好的说明它,我们需要建两张表,下面的语句用于创建一张测试用的订单表: CREATE TABLE t_o...

小小人故事 ⋅ 2015/12/15 ⋅ 0

怎么去看懂mysql的执行计划

mysql的查看执行计划的语句很简单,explain+你要执行的sql语句就OK了。 举一个例子 EXPLAIN SELECT * from employees where employees.gender='M' 返回的结果如下: 这些结果都代表什么? id...

王小明123 ⋅ 2012/05/30 ⋅ 0

《MySQL必知必会》读书笔记(二) 8~14章

1、like 搜索模式:由字面值,通配符或两者组合构成的搜索条件。 like指示MySQL,后跟的搜索模式利用通配符匹配而不是直接相等匹配进行比较。 %表示任何字符出现任意次数: select prodid,pr...

一万 ⋅ 2016/02/06 ⋅ 0

深入了解MySQL 5.5分区功能增强

Oracle在并购Sun后对于MySQL的态度令人寻味。在新发布的MySQL 5.5中带来了许多增强的功能,在这篇文章中,我们将解释一下MySQL 5.5分区功能的增强特性。 MySQL 5.5的发布带来了许多增强的功能...

BearCatYN ⋅ 2015/03/24 ⋅ 0

做图表统计你需要掌握SQL Server 行转列和列转行

原文:做图表统计你需要掌握SQL Server 行转列和列转行 说在前面 做一个数据统计和分析的项目,每天面对着各种数据,经过存储过程从源表计算汇总后需要写入中间结果表以提高数据使用效率,那么...

杰克.陈 ⋅ 2017/12/13 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

vbs 取文件大小 字节

dim namedim fs, s'name = Inputbox("姓名")'msgbox(name)set fs = wscript.createobject("scripting.filesystemobject") 'fs为FSO实例if (fs.folderexists("c:\temp"))......

vga ⋅ 10分钟前 ⋅ 0

高并发之Nginx的限流

首先Nginx的版本号有要求,最低为1.11.5 如果低于这个版本,在Nginx的配置中 upstream web_app { server 到达Ip1:端口 max_conns=10; server 到达Ip2:端口 max_conns=10; } server { listen ...

算法之名 ⋅ 今天 ⋅ 0

Spring | IOC AOP 注解 简单使用

写在前面的话 很久没更新笔记了,有人会抱怨:小冯啊,你是不是在偷懒啊,没有学习了。老哥,真的冤枉:我觉得我自己很菜,还在努力学习呢,正在学习Vue.js做管理系统呢。即便这样,我还是不...

Wenyi_Feng ⋅ 今天 ⋅ 0

博客迁移到 https://www.jianshu.com/u/aa501451a235

博客迁移到 https://www.jianshu.com/u/aa501451a235 本博客不再更新

为为02 ⋅ 今天 ⋅ 0

win10怎么彻底关闭自动更新

win10自带的更新每天都很多,每一次下载都要占用大量网络,而且安装要等得时间也蛮久的。 工具/原料 Win10 方法/步骤 单击左下角开始菜单点击设置图标进入设置界面 在设置窗口中输入“服务”...

阿K1225 ⋅ 今天 ⋅ 0

Elasticsearch 6.3.0 SQL功能使用案例分享

The best elasticsearch highlevel java rest api-----bboss Elasticsearch 6.3.0 官方新推出的SQL检索插件非常不错,本文一个实际案例来介绍其使用方法。 1.代码中的sql检索 @Testpu...

bboss ⋅ 今天 ⋅ 0

informix数据库在linux中的安装以及用java/c/c++访问

一、安装前准备 安装JDK(略) 到IBM官网上下载informix软件:iif.12.10.FC9DE.linux-x86_64.tar放在某个大家都可以访问的目录比如:/mypkg,并解压到该目录下。 我也放到了百度云和天翼云上...

wangxuwei ⋅ 今天 ⋅ 0

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 今天 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 今天 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部