SQL-特定名称字段的响应时间计数范围

时间:2018-10-14 14:40:47

标签: sql

需要以下查询的帮助。我有一个表来存储名称及其响应时间。我需要创建一个报告,其中每个名称应以以下格式进行一周的查找。查找范围计数(响应时间),总体积和平均(响应时间)

NAME    0TO5    5TO10   10TO60  60TO120 120+    TOTAL   AVG(rt)
A           
B                           
C                           
D

例如-COUNT 2 ON(0TO5),COUNT 9 ON(5TO10),COUNT 15 ON(10TO60),COUNT 11 ON(60TO120),COUNT 34 ON(120+),总计数(71)和AVG (rt)

1 个答案:

答案 0 :(得分:0)

假设您的桌子是:

create table my_table (
  name varchar(10),
  rt int
);

您的查询应类似于:

select 
    name,
    sum(case when rt <= 5 then 1 end) as '0to5',
    sum(case when rt > 5 and rt <= 10 then 1 end) as '5to10',
    sum(case when rt > 10 and rt <= 60 then 1 end) as '10to60',
    sum(case when rt > 60 and rt <= 120 then 1 end) as '60to120',
    sum(case when rt > 120 then 1 end) as '120+',
    count(*) as 'total',
    avg(rt) as avg
  from my_table
  group by name