2016-03-29 17 views
0

'da 1 veya 0'a not vermek için bir döngüyü nasıl kullanabileceğimi öğrenmek istedim. Bu hesaplanan işaretlerin son Sonuç sütununda gösterileceği tablo ... Programımı nasıl yazabilirim plpgsql içinde işlevler ve döngüler kullanarak öğrenci işaretlerini hesaplayabiliyorum .... Ayrıca işaretler, Answerered_Correctly temelinde kontrol edilecektir. Eğer 'Evet' işaretliyse, aksi halde 1 olacak şekilde işaretlenir. Lütfen bir çözüm önerinizPostgresql

create table test(User_ID varchar(20) , 
User_Name varchar(30), 
Question_Number integer, 
Answered varchar(10), 
Answered_Correctly varchar(20), 
Question_Text text, 
Correct_Answer text, 
User_Choice text, 
Result varchar(10) 
) 

enter image description here

+0

http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload -resimlerinizi-of-kod-on-so-zaman-sorma-a-söz/285557 # 285557 –

cevap

0

Yani, Result weat dayalı 1 veya 0 olmalıdır Cevabı doğru mu, değil mi? Neden bir integer yerine metin var?

Answered ve Answered_Correctly için de geçerlidir - bunlar boolean olmalıdır?

Sadece, PL/pgsql gerek yok, soruyu anladım varsayarsak:

UPDATE test 
    SET result = CASE answered_correctly WHEN 'Yes' THEN 1 ELSE 0 END 
    WHERE result IS NULL;