早教吧作业答案频道 -->数学-->
mysql怎么合并一列里相同的字段,并写到新的表中?原来表结构:id名字科目分数1小明902小东803小华英语554小明885小明756小东67新表:1小明908807502小东000067...
题目详情
mysql 怎么合并一列里相同的字段,并写到新的表中?
原来表结构:
id 名字 科目 分数
1 小明 90
2 小东 80
3 小华 英语 55
4 小明 88
5 小明 75
6 小东 67
新表:
1 小明 90 88 0 75 0
2 小东 0 0 0 0 67
...
原来表结构:
id 名字 科目 分数
1 小明 90
2 小东 80
3 小华 英语 55
4 小明 88
5 小明 75
6 小东 67
新表:
1 小明 90 88 0 75 0
2 小东 0 0 0 0 67
...
▼优质解答
答案和解析
你这个是 行列转换, 不是合并.
如果你能够确定 课程的数量的话, 那么使用 CASE WHEN 应该可以处理.
也就是
SELECT
MIN(id) AS id,
名字,
SUM( CASE WHEN 科目= '数学' THEN 分数 ELSE 0 END ) AS 数学
... 其他科目写法基本相同 ...
FROM
表
GROUP BY
名字
如果你能够确定 课程的数量的话, 那么使用 CASE WHEN 应该可以处理.
也就是
SELECT
MIN(id) AS id,
名字,
SUM( CASE WHEN 科目= '数学' THEN 分数 ELSE 0 END ) AS 数学
... 其他科目写法基本相同 ...
FROM
表
GROUP BY
名字
看了 mysql怎么合并一列里相同...的网友还看了以下:
用递等式计算.(写出必要的计算过程,能简便计算的用简便方法计算)7.9×12.525.38-1.4 2020-04-07 …
8.1×12.527.36-1.43-4.36-4.570.1-0.1×[0.01÷(1-0.9) 2020-04-07 …
口算2.4+0.73=3.08×4=537-99=2.6×0.3=3-0.71-0.19=8-0. 2020-04-07 …
用简便方法计算.8.37×7.2+8.37×2.812.5×3.9×0.81.3+2.9+8.7+ 2020-05-15 …
串行算法改成并行算法#include#includeusingnamespacestd;//设置全 2020-06-03 …
1到200前面随便加正负号所得最小非负数是多少因为1-2+4-3=05-6+8-7=0.197-1 2020-07-18 …
脱式计算(带*号的要简算)19.8×0.54÷0.081*0.25×0.32×1.251.89+8 2020-07-18 …
用简便方法计算下面各题8.7×0.72+0.28×8.7+8.3.9×9.9+3.91.25×88 2020-07-19 …
解下面的方程:4.3x=13.335x6.3–4x=11.5x÷1.8=7.9最后一道要验算.8( 2020-07-19 …
8.9×0.2+8.8×0.2+8.7×0.2+...+8.1×0.2=? 2020-07-21 …