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

如何基于给定schema编写SQL查询,筛选职业生涯安打超2000的球员信息

适配SQL Server的查询语句

SELECT 
    p.playerID 球员ID,
    p.nameFirst 名字,
    p.nameLast 姓氏,
    SUM(b.H) 职业生涯总安打数
FROM Players p
INNER JOIN Batting b 
    ON p.playerID = b.playerID
GROUP BY p.playerID, p.nameFirst, p.nameLast
HAVING SUM(b.H) > 2000
ORDER BY 职业生涯总安打数 DESC

逻辑说明

  • 通过INNER JOIN关联球员基础信息表和赛季打击数据表,匹配每个球员的所有赛季打击记录
  • 用GROUP BY按球员唯一ID、姓名分组,对每个球员的所有赛季安打数做求和聚合,计算出生涯总安打数
  • 用HAVING过滤聚合结果,只保留总安打数超过2000的球员。这里不能用WHERE过滤,因为WHERE执行在聚合计算之前,无法识别聚合后的总安打数字段
  • 末尾的ORDER BY是可选配置,用来按总安打数从高到低排序,方便直接查看排名

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 13:54:03