1. 程式人生 > >實驗9-10 編寫一個存儲過程proc_test_stat3

實驗9-10 編寫一個存儲過程proc_test_stat3

開始 數據庫 clas 開始時間 實驗 arc -s sql font

在TestDB數據庫中,編寫一個存儲過程proc_test_stat2,要求:

1)無參數

2)在數據庫中有表exercisebook, 用於保存用戶的作業,包含下列字段

exerid 作業的唯一編號;

quesid 問題編號

userid 用戶編號

eval 驗證結果:start,success,error

posttime 提交時間

其中,數據的語義是

a)用戶和問題是多對多關系,一個用戶在答題過程中對同一個問題會產生多條記錄;

b)驗證結果中的start表示開始實驗,success表示成功結束實驗,error表示驗證錯誤;

c)每個用戶開始實驗時會在exercisebook表中增加一條eval 內容是start的記錄,其中包含開始時間;

d)開始實驗後,每次提交都會在exercisebook表中增加一條記錄,如果驗證成功則eval 是success,若錯誤則eval 是error

請以結果集返回用戶的作業最近一次的提交情況,包含下列字段:

exerid, userid,quesid,eval,posttime

create procedure proc_test_stat2
as
begin
set nocount on;
	select exerid,userid,quesid,eval,posttime=convert(varchar(100),posttime,21)
from exercisebook a
where a.posttime in
(
    select max(b.posttime) 
    from  exercisebook b
    where a.userid=b.userid
    group by b.userid
) 
	
set nocount off
end

  

實驗9-10 編寫一個存儲過程proc_test_stat3