You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQLite双分组查询排序异常:按年份排序不生效问题

解决方案

问题分析

你的SQL语句存在两个核心问题:

  • 列名不匹配:表中存储人员的列是person,但你用了不存在的author列,导致分组和排序逻辑混乱。
  • 排序优先级错误:要实现按年份升序的需求,ORDER BY需将year设为第一排序条件。

正确SQL语句

SELECT person, year, COUNT(task) AS tasks
FROM db
GROUP BY person, year
ORDER BY year ASC, person;

说明

  1. 列名修正:将author替换为表中实际的person列,确保分组与选取的列一致。
  2. 计数优化:用COUNT(task)统计任务数量更贴合需求(若允许task为空,可改用COUNT(*))。
  3. 排序逻辑:ORDER BY year ASC, person先按年份升序排列,同一年份下再按人员名称排序,完全匹配你的预期结果。

内容的提问来源于stack exchange,提问作者Lukas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 20:24:23