++ Descomponer TRANSFORM ++

05/04/2004 - 11:44 por Roberto Carlos NH | Informe spam
Hola, buen día a todos.

Tengo un problema.
Estoy tratando de hacer una Base de datos para el control de calificaciones
de un colegio.

* El colegio ya tiene una base de datos dode almacena sus calificaciones de
la siguiente manera:

Codigo | Nombre | Matematias | Geografia
1 Arturo 10 9
2 Roberto 8 10
3 Anselmo 9 9

(El campo código lo agregé para fines de referencia)

*Lo que quiero hacer es descomponer esta tabla para que me quede así:

Num | Materia | Calif
1 Matematias 10
1 Geografia 9
2 Matematias 8
2 Geografia 10
3 Matematias 9
3 Geografia 9

*De tal forma que al hacer una consulta con TRANSFORM me que de como la
tabla original
*No sé si sea posible (o así se deba hacer) que se genere una tabla al
descomponer o que los datos se importen a una tabla existente con los campos
indicados (Num, Materia, Calif)

*La finalidad de esto es que despues se pueda relacionar con otras tablas y
sus claves correspondientes

Espero puedan ayudarme ya que he intentado de muchas formas y no obtengo
resultados.

Muchas gracias de antemano
 

Leer las respuestas

#1 Adrian D. Garcia
05/04/2004 - 11:45 | Informe spam
Es decir, lo que deseas hacer es normalizar la tabla que tienes
desnormalizada.

Se podria solucionar de esta forma

SELECT Codigo, 'MATEMATICAS' as Materia , Matematicas as Calificacion
FROM Calificaciones
UNION ALL
SELECT Codigo, 'GEOGRAFIA' as Materia , Geografia

Si tuvieses mas materias sigue agregando tantis UNION ALL /SELECT que sean
necesarios.
Para mayor comodidad puedes crear una vista con este SELECT:

CREATE VIEW Calificaciones_Normalizada
AS
SELECT Codigo, 'MATEMATICAS' as Materia , Matematicas as Calificacion
FROM Calificaciones
UNION ALL
SELECT Codigo, 'GEOGRAFIA' as Materia , Geografia
GO

Y luego utilizarla de esta forma

SELECT * FROM Calificaciones_Normalizada


Saludos

Adrian D. Garcia
NDSoft
MCSD
"Roberto Carlos NH" escribió en el mensaje
news:
Hola, buen día a todos.

Tengo un problema.
Estoy tratando de hacer una Base de datos para el control de


calificaciones
de un colegio.

* El colegio ya tiene una base de datos dode almacena sus calificaciones


de
la siguiente manera:

Codigo | Nombre | Matematias | Geografia
1 Arturo 10 9
2 Roberto 8 10
3 Anselmo 9 9

(El campo código lo agregé para fines de referencia)

*Lo que quiero hacer es descomponer esta tabla para que me quede así:

Num | Materia | Calif
1 Matematias 10
1 Geografia 9
2 Matematias 8
2 Geografia 10
3 Matematias 9
3 Geografia 9

*De tal forma que al hacer una consulta con TRANSFORM me que de como la
tabla original
*No sé si sea posible (o así se deba hacer) que se genere una tabla al
descomponer o que los datos se importen a una tabla existente con los


campos
indicados (Num, Materia, Calif)

*La finalidad de esto es que despues se pueda relacionar con otras tablas


y
sus claves correspondientes

Espero puedan ayudarme ya que he intentado de muchas formas y no obtengo
resultados.

Muchas gracias de antemano


Preguntas similares