总体进度

TABLE WITHOUT ID
  length(filter(rows, (r) => r.mastery_current = r.mastery_target)) AS "已达标",
  length(rows) AS "总条目",
  round(length(filter(rows, (r) => r.mastery_current = r.mastery_target)) / length(rows) * 100, 0) + "%" AS "完成率"
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target != null
GROUP BY true

待提升条目(目标 > 当前)

TABLE mastery_target AS "目标", mastery_current AS "当前", tags AS "标签"
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target != mastery_current AND mastery_target != "skip"
SORT mastery_target DESC

按目标档位分组

Proficient 待提升

LIST
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target = "proficient" AND mastery_current != "proficient"
SORT mastery_current ASC

Familiar 待提升

LIST
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target = "familiar" AND mastery_current != "familiar" AND mastery_current != "proficient"
SORT file.name ASC

已达标条目

TABLE mastery_target AS "档位", tags AS "标签"
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target = mastery_current AND mastery_target != "skip"
SORT mastery_target DESC

Skip 清单

LIST
FROM "opensources" OR "entities" OR "concepts"
WHERE mastery_target = "skip"
SORT file.name ASC