¿La mejor manera de aplanar / denormalizar tablas de búsqueda de SQL?

Tengo un montón de mesas como esta:

Lookup_HealthCheckupRisks
------------
ID  Name
1   Anemia
2   Anorexic
3   Bulemic
4   Depression
...
122   Syphilis



PatientRisksOnCheckup
------------------
ID CheckupID RiskID
1  11        2
2  11        3
3  12        1
4  14        1
5  14        3
...

Pero necesito una versión aplanada, como esta:

PatientCheckup
------------------
CheckupID Risk_1 Risk_2 Risk_3 Risk_4 .. Risk_122
11        0      1      1      0         0
12        1      0      0      0         0
13        0      0      0      0         0
14        1      0      1      0         0

No tengo idea de cómo hacer esto, lo mejor que puedo pensar es escribir una tabla temporal, definir todas las 122 columnas y luego hacerIf Exists ( SELECT * FROM PatientRisksOnCheckup where RiskID=i and checkupID=j ) INSERT INTO PatientCheckup (1) WHERE CheckupID=j e iterar sobrei, j... > _ <

Escribir esta consulta para una sola tabla no es lo mejor, pero necesito aplanar datos como este para otras treinta tablas del mismo tamaño. Er ... sugerencias por favor?

También tengo curiosidad por saber si lo que estoy haciendo es algo común o no ...

Necesito desnormalizar / aplanar los datos de SQL para el software de estadísticas.

Respuestas a la pregunta(3)

Su respuesta a la pregunta