mysql group by 区间_SQL按区间进行group by
SQL在通常情況下只能按字段值進行分類匯總。
現在有現在這張表:
create table data(
id int UNSIGNED NOT NULL,
version varchar(12),
starttime int UNSIGNED,
opt_id int NOT NULL,
opt_value int NOT NULL
)ENGINE = MYISAM;
要求按速率區間進行分類匯總:
其中當opt_id為0x00000015時,opt_value保存的速度。
下面的sql是按 0-100, 100-500, 500-1000, > 1000進行匯總的查詢:
select elt(interval(d.opt_value,0, 100, 500, 1000), '小于100K', '100-500K', '500-1000K', '大于1000K') as 速率, count(d.opt_value) as cnt from data d
where d.opt_id = 0x00000015 group by elt(interval(d.opt_value, 0, 100, 500, 1000), '小于100K', '100-500K', '500-1000K', '大于1000K')
(以上代碼只使用于mysql, 其它數據庫是否可用,要看是否有替代函數)
總結
以上是生活随笔為你收集整理的mysql group by 区间_SQL按区间进行group by的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql f参数_MySQL 数据类型
- 下一篇: java实例变量成员变量_Java的类成