我正试图以这种方式按时间间隔对查询进行分组:
SELECT COUNT( * ) AS count, i.date
FROM intervals i
LEFT JOIN dtracker dt ON
i.date <= dt.date AND i.date + INTERVAL (NUMSEC) SECOND >= dt.date
WHERE (SOME CONDITIONS)
GROUP BY i.date
每次我填写表'间隔'(导致间隔可以改变),NUMSEC也会根据间隔表进行更改。
没有'WHERE',一切正常,如果没有某些间隔,则显示0间隔。但是如果我在'WHERE'中设置一些条件并且没有结果,则不再显示此间隔。
似乎'WHERE'子句影响整个查询(这很有意义),但我需要它只影响dtracker表。我怎么能这样做?
提前多多感谢。
答案 0 :(得分:1)
将WHERE
替换为另一个AND
,以便条件成为LEFT JOIN ... ON
子句的一部分。
答案 1 :(得分:0)
也许您会对使用'HAVING'关键字感兴趣。