是否可以從列狀態(字串)為“REC”的列路徑(字串)中獲取值,否則如果 status="INFO", ... ?
SELECT status, count(idFileRemote),
round(avg(rating), 2) AS rating,
album, coverhash, path
FROM tracks
GROUP BY album
例如:如果我有
status Album Path
------ ----- -----
INFO foo path1
REC foo path2
OTHER foo path3
INFO bar path91
OTHER bar path93
我會得到
status Album Path
REC foo path2
INFO bar path91
uj5u.com熱心網友回復:
您可以利用SQLite 的裸列在HAVING子句中使用條件聚合:
SELECT *
FROM tracks
GROUP BY Album
HAVING MIN(CASE status WHEN 'REC' THEN 1 WHEN 'INFO' THEN 2 ELSE 3 END);
請參閱演示。
請注意,此問題通常可以使用視窗函式解決,但我不會在查詢中使用它們,因為 Android 僅自 API 版本 30 起才支持它們。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/360103.html
標籤:安卓 sqlite android-sqlite 分钟 有
