Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Fila única para producto cartesiano

Estas en el tema de Fila única para producto cartesiano en el foro de Oracle en Foros del Web. Estoy intentando solucionar un problema ancestral (ORACLE 10g ) que planteo a continuación: Pongamos una tabla de alumnos y otra de asignaturas con una relación ...
  #1 (permalink)  
Antiguo 17/12/2008, 06:45
 
Fecha de Ingreso: diciembre-2008
Mensajes: 5
Antigüedad: 16 años
Puntos: 0
Fila única para producto cartesiano

Estoy intentando solucionar un problema ancestral (ORACLE 10g ) que planteo a continuación:

Pongamos una tabla de alumnos y otra de asignaturas con una relación 1:n. Al realizar una consulta sobre las asignaturas del alumno "juan" obtengo los siguiente resultados:

| Juan | Matematicas |
| Juan | Lengua |

¿Existe alguna forma en SQL (no PL/SQL) para obtener el siguiente resultado?

| Juan | Matematicas ; Lengua |

Es decir que el motor de base de datos reagrupe los multivalores de una consulta. En el manual de Oracle 10g no he encontrado nada pero entiendo que es una operación muy común y util por ejemplo a la hora de exportación de resultados en xls o texto plano.
  #2 (permalink)  
Antiguo 17/12/2008, 10:23
 
Fecha de Ingreso: diciembre-2008
Mensajes: 5
Antigüedad: 16 años
Puntos: 0
Respuesta: Fila única para producto cartesiano

¿Nadie tiene una solución? vamos señores seguro que a alguien ya le ha ocurrido.

La solución que me planteo es hacer esta funcionalidad en Java pero creo que no es lo más óptimo teniendo un motor como Oracle.

Gracias anticipadas
  #3 (permalink)  
Antiguo 18/12/2008, 08:49
 
Fecha de Ingreso: marzo-2008
Ubicación: Euskadi
Mensajes: 64
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Fila única para producto cartesiano

Hola aquintas,

que yo sepa no hay manera de hacerlo en SQL sin incluir en la misma consulta la lista de asignaturas, lo cual es muy 'sucio'. La mejor solución en mi opinión es hacer la consulta normal en Oracle ordenando por Nombre y Asignatura y en Java generar la lista (es muy sencillo).

Un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:17.