mysql 匹配问题 50

t1唯一id科目学期姓名成绩1语文1陈101语文2陈102语文1林103数学1王10t2唯一id姓名1陈2林3王现在要在t2后面添加一列成绩结果应该是唯一id姓名成绩1陈... t1
唯一id 科目 学期 姓名 成绩
1 语文 1 陈 10
1 语文 2 陈 10
2 语文 1 林 10
3 数学 1 王 10

t2

唯一id 姓名
1 陈
2 林
3 王

现在要在t2后面添加一列 成绩

结果应该是
唯一id 姓名 成绩
1 陈 20
2 林 10
3 王 10

请问怎么求和
展开
 我来答
jouney90
2016-10-22 · TA获得超过402个赞
知道小有建树答主
回答量:247
采纳率:0%
帮助的人:171万
展开全部

使用GROUP BY语句和SUM语句就能实现。

答案:SELECT 唯一id,姓名,SUM(成绩) 成绩 FROM t1 GROUP BY 唯一id

如下是表t1:


答案:SELECT 唯一id,姓名,SUM(成绩) 成绩 FROM t1 GROUP BY 唯一id 后就输出了你想要的:

追问
我想在t2表后面插入一列, 因为还有点别的因素,
追答

那就再创建一个t2表,然后在t2表中增加一列成绩,再关联t1中的成绩来更新t2中的成绩数值,答案如下:

alter table t2 add 成绩 varchar(30);
UPDATE t2 SET 成绩=(SELECT SUM(成绩) FROM t1 WHERE 唯一id=1)    WHERE 唯一id=1;
UPDATE t2 SET 成绩=(SELECT SUM(成绩) FROM t1 WHERE 唯一id=2)    WHERE 唯一id=2;
UPDATE t2 SET 成绩=(SELECT SUM(成绩) FROM t1 WHERE 唯一id=3)    WHERE 唯一id=3;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式