Tengo un montón de tablas de la siguiente manera:¿La mejor manera de aplanar/desnormalizar las tablas de búsqueda de SQL?
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 esto:
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 ni idea de cómo hacer esto, lo mejor que puede pensar es escribir una tabla temporal, definir todas las 122 columnas, y luego hacer If Exists (SELECT * FROM PatientRisksOnCheckup where RiskID=i and checkupID=j) INSERT INTO PatientCheckup (1) WHERE CheckupID=j
y iterar sobre i, j...
> _ <
Escribiendo esta consulta para una sola tabla es factible no es el mejor, pero he necesitan para aplanar los datos li esto por otras treinta mesas del mismo tamaño. Er ... sugerencias por favor?
También tengo curiosidad por saber si lo que estoy haciendo es algo común que hacer o no ...?
Necesito desnormalizar/aplanar los datos de sql para el software de estadísticas.
Por favor describa lo que la base de datos que está utilizando. – RedFilter
+1 gracias por ser una persona sensata en Stackoverflow –