J'ai trois tables comme indiqué ci-dessous.Requête pour joindre trois tables avec une valeur de ligne comme en-tête de colonne
TABLE1 : tb_subject
subject_id subject_name
1 English
2 Maths
3 Science
Table2 : tb_student
subject_id student_id
1 AA
1 BB
2 CC
3 DD
3 EE
Table3 : tb_student_score
student_id score conducted_month_number
AA 20 2
BB 30 3
CC 50 4
AA 80 4
DD 50 6
BB 10 2
EE 40 3
Résultat devrait être
conducted_month_number SUM(subject_id1) SUM(subject_id2) SUM(subject_id3)
1 0 0 0
2 30 0 0
3 30 0 40
4 80 50 0
5 0 0 0
6 0 0 60
7 0 0 0
8 0 0 0
9 0 0 0
10 0 0 0
11 0 0 0
12 0 0 0
Comment écrire une requête de sélection pour cela? Peut-on ajouter tous les numéros de mois qui ne sont pas stockés dans la table comme dans la sortie résultante?
sql server 2005 – user2431727
Avez-vous encore de code? Y a-t-il un nombre connu (fixe) de sujets ou sont-ils variables? –
subject_id1 dans 4. month is not 50 pouvez-vous le vérifier? –