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

juntar en un solo registro

Estas en el tema de juntar en un solo registro en el foro de Oracle en Foros del Web. Hola, necesito juntar en un solo registro las ocurrencias de un mismo dato. por ejemplo tengo un correos con varior rut, en variois registros, entonces ...
  #1 (permalink)  
Antiguo 11/07/2012, 14:53
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
juntar en un solo registro

Hola,
necesito juntar en un solo registro las ocurrencias de un mismo dato. por ejemplo tengo un correos con varior rut, en variois registros, entonces necesito un registro con el correo y los rut, hasta 10 que pudiesen haber.

[email protected] 58644
[email protected] 86145
[email protected] 89232

tonces necesito

[email protected] 58644 86145 89232



para esto me cree una tabla con esa nueva estructura y un algoritmo (mas o menos...) como este:


Código HTML:
       
declare
  dato1 varchar;
  dato2 varchar;
  dato3 varchar;
  dato4 varchar;
  i number := 0;
  cursor busca is
    select distinct correo from tabla
  ;
  cursor busca (correo_e tabla.correo%type) is
    select rut from tabla a where a.correo = correo_e
  ;
  
  
begin 
open busca;
 loop
   fetch busca_c into busca;
   datos||i := busca_c.rut;
   if (buscarut%notfound) then
     exit;
   end if
   i:=i+1;
 end loop
end;
el punto es que estoy tratrando de llenar una variable asi:

Código HTML:
datos||i := busca_c.rut;
pero me envia un error.
Espero que capten la idea,
Saludos!!
__________________
Dios es mas grande que tu problema :-)
  #2 (permalink)  
Antiguo 11/07/2012, 16:37
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: juntar en un solo registro

Código SQL:
Ver original
  1. SELECT correo,wm_concat(camporepeticion) FROM tabla
  2. GROUP BY correo

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 12/07/2012, 13:51
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
Respuesta: juntar en un solo registro

Hola, funciona super bien!
pero lo que necesito es hacer es meter esos rut en un campo de una tabla.


[email protected] 58644
[email protected] 86145
[email protected] 89232

tonces necesito


[email protected]; 58644; 86145; 89232


es decir
correo [email protected]
rut1 58644
rut2 86145
rut3 89232

muchisimas gracias!
Mauricio
__________________
Dios es mas grande que tu problema :-)
  #4 (permalink)  
Antiguo 13/07/2012, 14:03
 
Fecha de Ingreso: enero-2007
Ubicación: Cali - Valle
Mensajes: 135
Antigüedad: 17 años, 3 meses
Puntos: 4
Respuesta: juntar en un solo registro

Hola...


Yo te recomendaria hacer 2 cursores, uno que me recorra los correos y otro los rut y asi se podria concatenar mas facil todo lo mismo para realizar el insert en alguna tabla.

Saludos.

Etiquetas: juntar, registro, select, tabla
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 15:32.