⑴ 请问sql2005中,做触发器我想在表1插入学生成绩时,表二对应的学号的学生总分增加应该怎么做
CREATE TRIGGER trig_score_insert
ON 表1
AFTER INSERT
AS
BEGIN
UPDATE 表2 SET 总分 = 总分 + inserted.成绩 FROM inserted WHERE 表2.学号 = inserted.学号;
END
⑵ sql有关加分的问题
update set 分数 = if(分数+10>100,100,分数+10) from 表 where 学生ID in (女生1ID,女生2ID)
------------------
额,我这是mysql的。
你是mssql?额。。。
⑶ sql serverl创建表stuMarks 不到60的加2分 急。。。
--现在假设你的表[stuMarks]所在数据库名字为DB,在[stuMarks]表中你有至少这样两个字段:学生编号stu_id、学生成绩score,你可以运行下面的批处理来实现这个“和谐”的过程。
--关于按分数排等级,我也写了个statement,可以根据你的具体情况来修改,你应该能看懂大概意思.
use DB
declare @currentid int
declare @currentscore int
declare @avgscore int
select @avgscore= AVG(score) from [stuMarks]
declare mycursor cursor local SCROLL scroll_locks --利用游标遍历整个表,优先给分数最低的人加分
for select stu_id,score from [stuMarks] order by score
open mycursor
while @avgscore <60
begin
fetch next from mycursor into @currentid, @currentscore
if @@fetch_status=-1 fetch first from mycursor into @currentid, @currentscore
if @currentscore<=98 --学生的分数必须小于或等于98,否则再加分就露馅了。
begin
update [stuMarks] set score=score+2 where stu_id=@currentid
select @avgscore= AVG(score) from [stuMarks]
end
end
close mycursor
--分数分级:
select stu_id, (case when score between 90 and 100 then N'优' when score between 80 and 90 then N'良' when score between 60 and 80 then N'中' else N'差' end) as dengji from [stuMarks]
⑷ 用SQL语句给一个表格里面的每一颗成绩加分,代码是怎么样的了
楼上的,别误导人了
就算是update 也要后面跟表名
update table_name set 科目=科目+20 where 条件
⑸ sql通过while循环进行加分
我觉得你这不对啊,要是有个最低分0分,加完之后岂不是很多100分?
我觉得你直接加<60的比较好
DECLARE @n int
WHILE(1=1) --条件永远成立
BEGIN
SELECT @n=COUNT(*) FROM stuMarks
WHERE writtenExam<60 --统计不及格人数
IF (@n>0)
UPDATE stuMarks --每人加2分
SET writtenExam=writtenExam+2
WHERE writtenExam<60
ELSE
BREAK --退出循环
END
⑹ sql语句 对计算机学院选修了002号课程的人学生的成绩增加2分
表结构和字段都不放出来怎么写。
写个大概的给你吧
update表名set成绩=成绩+2where学号in(select学号from选修课程表where课程='002')
⑺ 查询全体学生的成绩并给与每门成绩加5分,sql的查询方法
select 字段1+5,字段2+5 from table 注意字段的类型 这个是查询成绩+5 数据库并没有真实改变
如果要改变数据库中数据 则使用update
update table set 字段1=字段1+5,字段2=字段2+5 这个就是真实的修改数据中所有成绩都加5 (也可以简写成 字段1+=5 )
⑻ 基于teaching数据库中的表,写出正确的T-SQL语句:将score表中所有学生的平时成绩增加2分。
成绩字段是什么?
假设成绩字段是:chengji
用update命令:
update 表名 set 字段=新值
你这里就是这样:
update score set chengji=chengji+2