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

Copiar de varias tablas a una, duplica ID

Estas en el tema de Copiar de varias tablas a una, duplica ID en el foro de Mysql en Foros del Web. Hola compañeros, Tengo una duda, a ver si me podéis ayudar con ello. Necesito copiar varias tablas que tienen la misma estructura a una tabla ...
  #1 (permalink)  
Antiguo 26/01/2010, 09:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 11 años, 3 meses
Puntos: 1
Copiar de varias tablas a una, duplica ID

Hola compañeros,

Tengo una duda, a ver si me podéis ayudar con ello.

Necesito copiar varias tablas que tienen la misma estructura a una tabla superior en la que digamos se juntan todos los productos de las otras subtablas. Por lo tanto lo hago mediante:

Código:
INSERT INTO `tabla_superior` SELECT * FROM `tabla_sub1` WHERE producto = 'patata'
El problema que tengo, es que a veces en las subtablas se repite el campo ID, y como coge todo y copia en tabla_superior el registro que tiene un ID que ya se encuentra en esta tabla que lo engloba todo da problema y no deja copiarlo. Mi pregunta es:

1. ¿Cómo podría copiarlo todo exceptuando sólo el campo ID en el caso de que se pueda? Como el campo ID en tabla_superior es auto_increment, pues seguiría automáticamente con el conteo, creo...

O bien: 2. ¿Cómo podría hacer el INSERT INTO SELECT * y decirle que que los id's en la tabla_superior los ponga según el orden que siguen en ésta y no en la de procedencia...

Gracias de antemano, espero haberme explicado más o menos bien!
  #2 (permalink)  
Antiguo 26/01/2010, 11:22
 
Fecha de Ingreso: enero-2010
Ubicación: Estelí, Nicaragua
Mensajes: 157
Antigüedad: 10 años
Puntos: 8
Respuesta: Copiar de varias tablas a una, duplica ID

Hola, talvez si explicaras un poco mejor tu objetivo con este tipo de consulta, para entender mejor lo que deseas.
  #3 (permalink)  
Antiguo 26/01/2010, 12:09
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 11 años, 9 meses
Puntos: 300
Respuesta: Copiar de varias tablas a una, duplica ID

especifica todos los campos menos el campo id, tanto al especificar los campos donde se insertan como los valores de procedencia.

INSERT INTO `tabla_superior` (campo2, campo3, campo4) SELECT campo2, campo3, campo4 FROM `tabla_sub1` WHERE producto = 'patata'

y así con las otras tablas

Etiquetas: copiar, tablas
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 20:12.