我想让下面的代码运行多个结束日期。那些结束日期必须是该月的第一天。 我可以执行代码几次,同时改变结束日期我自己,但多数人的工作,我想从2001年到现在的蒙特利数据。所以我的猜测是我必须循环这个?MYSQL循环此代码
这里是代码我使用:
Select t4.Count, t4.Status
From(
SELECT count(l.VoerID) as Count, l.Datum, l.Status, l.LogID
FROM (
SELECT k.VoerID, k.Datum, MAX(k.LogID) AS LogID
FROM DB.LogStatus k
Where Datum > '2001-01-01'
and Datum < '2013-07-01'
GROUP BY k.VoerID
) m
JOIN DB.LogStatus l
ON l.VoerID = m.VoertuigID AND l.LogID = m.LogID
Where status in ('x',y,'z')
Group by Status
)t4
谁能提供帮助?
编辑::::: @STEPH
当我使用这个代码和平(1):
SELECT VoertID,max(LogID) as MaxLogID,Datum
from DB.LogStatus
WHERE Datum >= '2001-01-01'
and Datum < '2013-07-01'
and VoerID = '50789'
GROUP BY VoerID
我得到VoerID 50789与上LOGID但没有相应的日期。这可能吗?
有许多选择,但你可以把它在shell脚本/批处理文件中或使用类似php的东西。 使用一些简单的Unix/Linux工具(如awk)甚至可以很好地格式化输出。 –
嗯,我可以在Mysql或这个代码中做到这一点。 (即时通讯相当新的一个...)以及如何? – DBek
你打算如何处理按状态分组的数据?会有一个结果集有'Month,Status,LogID *,Datum *,Count'吗?*这些都是FIRST发生的值,因为它们不在组中 –