遇到的第一行的值我有一個這樣的查詢:採取非集合表達式
SELECT PlayerID, COUNT(PlayerID) AS "MatchesPlayed", Name, Role, Team,
SUM(Goals) As "TotalGoals", SUM(Autogoals) As "TotalAutogoals",
SUM(...)-2*SUM(...)+2*SUM(...) AS Score, ...
FROM raw_ordered
GROUP BY PlayerID
ORDER BY Score DESC
其中raw_ordered
的每一行描述了一些比賽的一些球員的表現,按時間倒序排列。
自從我被PlayerID
分組我從這個查詢得到的是其中每一行提供的一些球員的累計數據的表格。現在,聚合函數的列沒有問題;我的問題是與Team
列。
球員在一個賽季中可能會改變球隊;我在這裏感興趣的是最後Team
他玩過,所以我想告訴SELECT
在Team
列的每個組中遇到的第一個值(或者一般而言,對於非 - 聚集函數列)。
不幸的是,我似乎沒有找到任何(容易)的方式SQLite中做到這一點:的SELECT
的documentation說:
如果表達式爲集合表達式,它在所有行評估在小組裏。否則,它針對單個任意選擇行選自內進行評價。
沒有關於如何改變這種現象,我不能聚合函數任何只需要它遇到的第一個值之間找到建議。
有什麼想法?
完美,它的工作,感謝您! –