SQL如何在另一行的新列中添加值
我有一张学生考试成绩表。每次考试都有自己的一行,我想给每个学生一行所有的成绩。。。 例如:SQL如何在另一行的新列中添加值,sql,Sql,我有一张学生考试成绩表。每次考试都有自己的一行,我想给每个学生一行所有的成绩。。。 例如: Student1 : email : school : comment : result1 Student1 : email : school : comment : result2 ... 必须是: Student1 : email : school : comment : result1 : result2 非常感谢 你需要改变你的桌子 可能选项是创建一个新表a,然后将数据复制到新表中 CREAT
Student1 : email : school : comment : result1
Student1 : email : school : comment : result2
...
必须是:
Student1 : email : school : comment : result1 : result2
非常感谢 你需要改变你的桌子 可能选项是创建一个新表a,然后将数据复制到新表中
CREATE TABLE NEWTABLE (Student1 Varchar(130), email Varchar(130),
school Varchar(80), comment Varchar(255), result1 FLOAT, result2 FLOAT);
然后
没有针对每个学生的考试是固定的或更改的?如何取决于哪个dbms,但您正在寻找符合您兴趣的交叉表或透视查询库。。。我使用SQL2008r2。我已经读了很多关于pivot的书,但是在所有的例子中我发现有一个聚合函数,但我不需要这个(?)
INSERT INTO NEWEXAM
SELECT (Student1 , email , school , comment , result1, '') FROM OLDTABLE