MySQL:从特定日期获取记录并每小时对特定站进行分组

标签 mysql sql

CREATE TABLE `call_log` (
  `call_id` int(11) NOT NULL AUTO_INCREMENT,
  `call_time` datetime NOT NULL,
  `caller` varchar(32) NOT NULL,
  `name_recording_url` varchar(123) DEFAULT NULL,
  `phone` varchar(10) NOT NULL,
  `forwarded_from` varchar(16) NOT NULL,
  `called_number` varchar(16) DEFAULT NULL,
  `sent_to_phone` varchar(10) NOT NULL,
  `market` varchar(64) NOT NULL,
  `station` varchar(12) NOT NULL,
  `distributor_id` int(11) NOT NULL,
  `distributor_phone` varchar(10) NOT NULL,
  `answered` enum('Yes','No') NOT NULL DEFAULT 'No',
  `mode` enum('Live','Test') NOT NULL,
  PRIMARY KEY (`call_id`)
)

所以,我想在不同的时间用总通话量填充电台。

例如,我们有电台 ABCD 和 ASDF。 ABCD 有 30 条记录,ASDF 有 10 条记录。我想每小时获取他们的记录。

示例输出为:

station    call_time(H)     total_call
ABCD       10               5               // ABCD has 5 calls at 10am
ABCD       12               20              // ABCD has 20 calls at 12pm
ABCD       15               5               // ABCD has 5 calls at 3pm
ASDF       08               4               // ASDF has 4 calls at 8am
ASDF       05               2               // ASDF has 2 calls at 5pm
ASDF       13               2               // ASDF has 2 calls at 1pm
ASDF       22               2               // ASDF has 2 calls at 10pm

最佳答案

SELECT station, HOUR(call_time), COUNT(call_id) AS total_call
FROM call_log
GROUP BY station, HOUR(call_time)

关于MySQL:从特定日期获取记录并每小时对特定站进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428214/

相关文章:

php - 计算数据库中的唯一记录数

mysql - mysql 交换主键

php - mysql如何获取表的外键

SQL 按月和年分组

php - 按字母顺序排列并计数的sql语句

javascript - 开始日期和结束日期在年份发生变化时不起作用

php - 在一张表中一起生成评论和文本区域

mysql - 如何用node-mysql查询并写出结果?

c# - 确定表是否存在于 SQL Server CE 中?

mysql - SQL NOT IN 仍包含应排除的行