Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Denormalizzazione dei dati (forse un pivot?)

Puoi usare pivot. Devi anche "classificare" i tuoi insegnanti da 1 a 6. Vedi il mio commento su come vuoi farlo. Per ora:

Select StudNumber, TeacherNumber, TeacherRank
from (
   Select ST.StudNumber
       , ST.TeacherNumber
       , ROW_NUMBER() OVER (PARTITION BY ST.StudNumber 
                    ORDER BY ST.TeacherNumber) AS TeacherRank
   From StudentTeacher AS ST)
Where TeacherRank <=6

Quindi puoi fare perno su questa affermazione. Ecco una buona spiegazione:Utilizzo di Pivot e UnPivot