我有一个包含4列的表格id
,Stream
这是文本,Duration
(int)和Timestamp
(日期时间)。每当有人在我的网站上播放特定的音频流时,都会插入一行。 Stream
是名称,Duration
是他们正在监听的时间。我目前使用下面的查询,以总听小时,每星期的身影了一年:GROUP BY具有日期范围
SELECT YEARWEEK(`Timestamp`), (SUM(`Duration`)/60/60) FROM logs_main
WHERE `Stream`="asdf" GROUP BY YEARWEEK(`Timestamp`);
这做什么,我希望......在今年呈现累计播放时间为每星期有数据。
不过,我想建立一个查询在那里我有一个结果行数周,有可能没有任何数据。例如,如果2006年的第26周没有那一周内的行,那么我希望SUM
的结果为0.
是否可以这样做?也许通过某种方式在日期范围内加入?
谢谢。我最终找到了一种替代解决方案(与我所问的完全不同,否则我会在这里发布),但我将在未来简单地使用这种方法。这太糟糕了,没有办法直接在查询中生成YEARWEEK数据集。 – Brad 2011-02-18 01:39:27