stu_id number(9),
name varchar2(20),
subject varchar2(100),
mark number(10)
)
insert into stutest values(1,'学生1','外语',98)
insert into stutest values(1,'学生1','数学',99)
insert into stutest values(1,'学生1','语文',100)
insert into stutest values(2,'学生2','外语',34)
insert into stutest values(2,'学生2','数学',35)
insert into stutest values(2,'学生2','语文',36)
insert into stutest values(3,'学生3','外语',21)
insert into stutest values(3,'学生3','数学',22)
insert into stutest values(3,'学生3','语文',23)
commit
select * from stutest
select stu_id,name,sum(decode(subject,'外语',nvl(mark,0),0)) 外语,
sum(decode(subject,'数学',nvl(mark,0),0)) 数学,
sum(decode(subject,'语文',nvl(mark,0),0)) 语文
from stutest group by stu_id,name
你可以参考下,不知道能不能帮到你
1、打开SQLServerManagement管理工具,使用sql语句创建一张测试表:
2、在测试表中,插入3条测试数据:
3、查询刚刚插入的数据:select*fromtblUpdate
4、使用一条语句批量修改整个表的数据,慎用:updatetblUpdatesetCol2='女'
5、使用一条语句批量修改指定条数的记录:updatetblUpdatesetCol2='第二次修改'whereId=1orId=2
6、使用一条语句批量修改这三条数据(按条件修改值):
7、使用一条语句批量修改数据,使用where和casewhen。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)