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

使用MySQL计算指定用户特定测试成绩的总和

问题分析与解决

你的SQL查询返回0是因为存在几个关键错误:

  1. 条件逻辑错误:用AND同时要求TestName=First和TestName=Third,但单条记录的TestName不可能同时是两个不同值,根本匹配不到任何数据,SUM结果自然为0。
  2. 字符串值未加引号:First和Third是字符串类型的字段值,SQL会将未加引号的它们识别为列名而非字符串,导致条件完全不成立。
  3. 表名使用关键字:table是SQL的保留关键字,直接作为表名可能引发语法问题,建议用反引号(如MySQL)或方括号(如SQL Server)包裹。
  4. 测试名称匹配不精确:你的表中TestName实际值是1. First、3. Third,之前的查询少了前缀编号,这也是匹配不到数据的原因。

正确的查询写法

方法1:用IN匹配多个测试名称

SELECT SUM(Earned) as Score FROM `table` WHERE TestName IN ('1. First', '3. Third') AND StudentID=3;

方法2:用OR连接多个条件

SELECT SUM(Earned) as Score FROM `table` WHERE (TestName='1. First' OR TestName='3. Third') AND StudentID=3;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 08:58:11