SQL语句,如何求每个学生的成绩与平均成绩的差?

mysq数据库分数字段为Score也就是说求每条记录的该字段,与该字段平均值的差?... mysq数据库

分数字段为Score

也就是说求每条记录的该字段,与该字段平均值的差?
展开
 我来答
twvampire
推荐于2020-12-26 · TA获得超过3620个赞
知道大有可为答主
回答量:3029
采纳率:76%
帮助的人:2984万
展开全部

不知道你具体什么数据库,,,可以用with as语句

;with cte as(select *
from 表 )
 
select *,
    成绩-(select avg(成绩) from test ) as 平均成绩
from cte t
追问
mysql 数据库 上面已经说了
追答

mysql可以用子查询的方式替换,,,

SELECT *,成绩-(select avg(成绩) from 表) AS 差
FROM 表
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lewis0815
2013-09-18 · 超过11用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:31.9万
展开全部
SELECT (SELECT AVG(score) FROM tbale) - table.score FROM table
追问
语法错误。。
追答
哥们 你是不是改的时候 改错了 我这变是可以执行的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tkbh
2013-09-18 · TA获得超过531个赞
知道小有建树答主
回答量:629
采纳率:0%
帮助的人:109万
展开全部
select name,studentid,Score- average(score) as 差,from 成绩表
追问
Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause

报错
追答
select name,studentid,Score- average(score) as 差,from 成绩表 group by name, studentid
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
372712810
2013-09-18 · 超过21用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:50.6万
展开全部
select Score-avg(Score) from dual
追问
Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause

报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式