尝试从同一个表中的一列编写两个计数

时间:2017-02-18 00:26:02

标签: mysql

这是我第一次使用SQL - 我试图弄清楚如何确定Uber数据集中两个时间段的乘车总数"早高峰时间"即BETWEEN' 06:30:00'和' 09:30:00'以及晚上高峰时段" BETWEEN' 16:30:00'和' 30:00'。

我在一个表中有6列 - record_id,Pickup_date,Pickup_time,lat,lon和&基地---但只需要返回两个高峰时段的总数...到目前为止,早上的热情是:

SELECT COUNT(*)AS Total_AM_Rush_Hour_Pickups
来自uber_data_sep2014 GROUP BY Pickup_time 在下午06:30:00'之间有Pickup_time和' 09:30:00&#39 ;;

但它返回三行具有相同的值......我无法弄清楚如何添加第二部分 - 请帮助!

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用CASE语句创建两个不同的计数器?

SELECT SUM(CASE WHEN Pickup_time BETWEEN '06:30:00' AND '09:30:00' THEN 1 ELSE 0 END) AS MorningCount,
SUM(CASE WHEN Pickup_time BETWEEN '16:30:00' AND '19:30:00' THEN 1 ELSE 0 END) AS EveningCount
FROM uber_data_sep2014