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

请求Wikidata查询协助:生成网球选手惯用手占比饼图数据

修正后的Wikidata查询语句(网球选手惯用手占比统计)

问题分析

原查询存在以下核心问题:

  • 未将网球选手与惯用手属性关联,变量间无逻辑联系
  • 错误地在同一子查询中同时匹配右手和左手,无法区分不同惯用手类型
  • 缺少分组逻辑,无法按每种惯用手类型独立计算占比

修正后的查询语句

SELECT ?handLabel (COUNT(?player) AS ?count) (ROUND((COUNT(?player) / ?total) * 100) AS ?percentage)
WHERE {
  # 匹配所有网球运动员(含子类)
  ?player wdt:P106/wdt:P279* wd:Q10833314.
  
  # 获取选手的惯用手属性
  ?player wdt:P741 ?hand.
  
  # 限定统计的惯用手类型:右手、左手、双手
  VALUES ?hand { wd:Q789447 wd:Q3039938 wd:Q20958766 }
  
  # 子查询计算符合条件的总选手数
  { SELECT (COUNT(DISTINCT ?p) AS ?total) WHERE {
      ?p wdt:P106/wdt:P279* wd:Q10833314.
      ?p wdt:P741 ?h.
      VALUES ?h { wd:Q789447 wd:Q3039938 wd:Q20958766 }
    }
  }
  
  # 获取惯用手的多语言标签(优先中文)
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],zh". }
}
GROUP BY ?hand ?handLabel ?total
ORDER BY DESC(?count)

查询说明

  • 用VALUES精准限定只统计右手(Q789447)、左手(Q3039938)、双手(Q20958766)三种类型
  • 通过子查询计算有效样本总数,确保占比计算准确
  • GROUP BY按每种惯用手分组,独立统计数量与占比
  • ROUND函数将百分比取整,适配饼图展示需求
  • 标签服务自动返回惯用手的中文名称,提升可读性

内容的提问来源于stack exchange,提问作者wily.x.x

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 15:05:33