我有兩個表'sites'和'index_log'。表'網站'是關於網站(用戶ID,名稱,描述等)的信息。表索引_日誌具有列日期,索引_計數和網站ID。所以我想最後和以前index_log一行爲每個站點,其中userid = 10,這是我的變種:加入Max和Max前行
SELECT ff.id,
ff.siteurl,
ff.last_count,
ff.last_date,
il2.index_count as previous_count,
MAX(il2.date) as previous_date
FROM (
SELECT s.siteurl,
s.id,
il.index_count as last_count,
MAX(il.date) as last_date
FROM sites s
LEFT JOIN index_logs il ON il.siteid = s.id
WHERE s.userid = 10
GROUP BY s.id
) as ff
LEFT JOIN index_logs il2 ON il2.siteid = ff.id AND il2.date < ff.last_date
GROUP BY ff.id
但在這個變體index_count柱(去年及以前)不匹配,最大日起一行。我希望能爲你提供幫助。
這不是有效的SQL Server查詢你最後2日誌條目,看起來像MySQL? – dnoeth
是什麼讓你說@dnoeth? – Squirrel
'GROUP BY'不包括SELECT列表中的所有非聚合列... – dnoeth