【MySQL】区间查询 例:10-20,20-30的数据

1. 建立数据库

CREATE TABLE `class` (
    ->   `id` int(255) NOT NULL AUTO_INCREMENT,
    ->   `score` int(11) DEFAULT NULL,
    ->   PRIMARY KEY (`id`)
    -> ) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8;

2. 随机填充点数据

在这里插入图片描述

3.需求,查找出0到60之间,每10一个区间的人数

SELECT elt(
  INTERVAL(score, 0, 50, 60, 70, 80, 90, 100),
  '<50', '50-60', '60-70', '70-80', '80-90', '90-100', '>=100') as score_level,
  count(*) as counts
FROM class
GROUP BY elt(
  INTERVAL(score, 0, 50, 60, 70, 80, 90, 100),
  '<50', '50-60', '60-70', '70-80', '80-90', '90-100', '>=100'
);

在这里插入图片描述

相关文章
相关标签/搜索