Mysql多列分组查询 示列详解

一张表 按照时间,按照时间,id分组

源表:



 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SELECT
flowData.STORE_ID,
    flowData.CREATE_HOUR AS createHour,
    SUM(IN_COUNT) hourInCount,
    SUM(OUT_COUNT) AS hourOutCount
    
FROM
    T_IVA_PROJECT_PASSENGER_FLOW_DATA flowData
LEFT JOIN T_IVA_PROJECT_PASSENGER_FLOW_DIMENSION dimension ON flowData.STORE_ID = dimension.STORE_ID
AND flowData.IP_ADDRESS = dimension.IP_ADDRESS
WHERE
flowData.STORE_ID = '871l'AND dimension. STATUS = 1 
GROUP BY
    flowData.STORE_ID,
    flowData.CREATE_DATE,
    flowData.CREATE_HOUR
ORDER BY
    hourInCount DESC


按照谁分组就是重复的放在一起,作为一列

然而当分组有多个层次的时候,按照范围显示 比如按照日期和时间分组

我们先把不同的日期分组,然后在按照不同的时间分组 然后相同合并,此图(可以看出按照日期和时间) 时间有相同的显示 因为他们的日期不同 

假如仅仅按照时间的话 就不会有相同的时间了


 NormalText Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT
flowData.STORE_ID,
    flowData.CREATE_HOUR AS createHour,
flowData.CREATE_DATE as date,
    SUM(IN_COUNT) hourInCount,
    SUM(OUT_COUNT) AS hourOutCount
    
FROM
    T_IVA_PROJECT_PASSENGER_FLOW_DATA flowData
LEFT JOIN T_IVA_PROJECT_PASSENGER_FLOW_DIMENSION dimension ON flowData.STORE_ID = dimension.STORE_ID
AND flowData.IP_ADDRESS = dimension.IP_ADDRESS
WHERE
flowData.STORE_ID = '871l'AND dimension. STATUS = 1 
GROUP BY
    flowData.STORE_ID,
    flowData.CREATE_DATE,
    flowData.CREATE_HOUR
ORDER BY
    hourInCount DESC


仅仅按照日期的话:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值