AQ_CESD_Score_i (I1/I2/I3/S2015/S2018)

⇒ Le score CES-D est calculé à partir des 20 items de la section « Votre moral »
⇒ C’est la moyenne des points attribués à chaque modalité de réponse :

  • 0 pour la modalité « Jamais, très rarement (moins d’1 jour) »;
  • 1 pour la modalité « Occasionnellement (1 à 2 jours) »;
  • 2 pour la modalité « Assez souvent (3 à 4 jours) »;
  • 3 pour la modalité « Fréquemment, tout le temps (5 à 7 jours) ».

Les items 4, 8, 12 et 16 sont inversés et les points attribués aux modalités dans le calcul du score le sont aussi :

  • 3 pour la modalité « Jamais, très rarement (moins d’1 jour) »;
  • 2 pour la modalité « Occasionnellement (1 à 2 jours) »;
  • 1 pour la modalité « Assez souvent (3 à 4 jours) »;
  • 0 pour la modalité « Fréquemment, tout le temps (5 à 7 jours) ».

Le score brut est la somme des points attribués aux différents items.
Cette somme est calculée sur le nombre d’items renseignés:

⇒ Quand le nombre d’items manquants est au plus égal à 4 (<=4), les items manquants sont imputés par la moyenne des items renseignés.
⇒ Si le nombre d’items manquants est supérieur à 4, le score n’est pas calculé et est mis à manquant.

Le score est compris entre 0 et 60.

Code SQL

UPDATE AQ_MODVIE_CESD SET AQ_CESD_Score_i = 0;
 
 DELIMITER |
 DROP PROCEDURE IF EXISTS CESD_Score;
 CREATE PROCEDURE CESD_Score (var varchar(50))
 BEGIN
 CASE WHEN var in ('Q04','Q08','Q12','Q16') 
 THEN SET @req = CONCAT('UPDATE AQ_MODVIE_CESD SET AQ_CESD_Score_i = AQ_CESD_Score_i+IFNULL((4-AQ_CESD_',var,'_n),AQ_CESD_SOMME/(20-AQ_CESD_NBNULL)) WHERE AQ_CESD_NBNULL<20');
 ELSE SET @req = CONCAT('UPDATE AQ_MODVIE_CESD SET AQ_CESD_Score_i = AQ_CESD_Score_i+IFNULL((AQ_CESD_',var,'_n-1),AQ_CESD_SOMME/(20-AQ_CESD_NBNULL)) WHERE AQ_CESD_NBNULL<20');
 END CASE;
 PREPARE r FROM @req; EXECUTE r; DROP PREPARE r;
 END |
 DELIMITER ;
 
 CALL CESD_Score('Q01');
 CALL CESD_Score('Q02');
 CALL CESD_Score('Q03');
 CALL CESD_Score('Q04');
 CALL CESD_Score('Q05');
 CALL CESD_Score('Q06');
 CALL CESD_Score('Q07');
 CALL CESD_Score('Q08');
 CALL CESD_Score('Q09');
 CALL CESD_Score('Q10');
 CALL CESD_Score('Q11');
 CALL CESD_Score('Q12');
 CALL CESD_Score('Q13');
 CALL CESD_Score('Q14');
 CALL CESD_Score('Q15');
 CALL CESD_Score('Q16');
 CALL CESD_Score('Q17');
 CALL CESD_Score('Q18');
 CALL CESD_Score('Q19');
 CALL CESD_Score('Q20');