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

insert into select

Estas en el tema de insert into select en el foro de Mysql en Foros del Web. tengo dos tablas unas de 8 campos y otra de 7 ( tbpos_temp ) campos y lo que quiero es insertar lo campos de una ...
  #1 (permalink)  
Antiguo 08/08/2006, 11:22
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
insert into select

tengo dos tablas unas de 8 campos y otra de 7 ( tbpos_temp ) campos y lo que quiero es insertar lo campos de una a la otra.
INSERT INTO tbpos_hist SELECT *,'N' FROM tbpos_temp ON DUPLICATE KEY UPDATE procesado='N'.

hasta hay bien pero el problema es al adicionar un campo a la tabla de 8 tbpos_hist el query ya no me sirve . como hago para insertar esa columna en cero . lo estoy haciendo asi pero no me sirve

INSERT INTO tbpos_hist SELECT *,'N','0' FROM tbpos_temp ON DUPLICATE KEY UPDATE procesado='N', con = '0'

gracias
__________________
:aplauso: Ivomat
  #2 (permalink)  
Antiguo 08/08/2006, 13:55
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 5 meses
Puntos: 11
Agregar un campo a la tabla se hace con alter

alter table nombre_tabla add column campo_nuevo tipo;
  #3 (permalink)  
Antiguo 09/08/2006, 09:33
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
la pregunta no esa la pregunta es como modifico mi query para que me sirva al insertar una nueva columna "con" en la tabla tbpos_hist

INSERT INTO tbpos_hist SELECT *,'N' FROM tbpos_temp ON DUPLICATE KEY UPDATE procesado='N'.

gracias.
__________________
:aplauso: Ivomat
  #4 (permalink)  
Antiguo 12/08/2006, 19:40
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
por favor como hago para modificar my query al agregar una columna en una de las dos tablas.

gracias
__________________
:aplauso: Ivomat
  #5 (permalink)  
Antiguo 15/08/2006, 01:31
 
Fecha de Ingreso: abril-2003
Mensajes: 656
Antigüedad: 21 años
Puntos: 1
Para entrar menos campos en el insert debes especificar los campos que van a ser insertados en la tabla tbpos_hist en el mismo orden que te saldran el la consulta

Mas o menos seria asi

INSERT INTO tbpos_hist (campo,campo,campo .....) SELECT *,'N' as campo (el mismo que la tabla tbpos_hist a insertar) FROM tbpos_temp ON DUPLICATE KEY UPDATE procesado='N'.
  #6 (permalink)  
Antiguo 15/08/2006, 09:19
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
muchas gracias por tu respuesta. el problema que tenia era el orden de las columnas a insertar . Cree la columna con al final de la tabla tbpost_his y asi me funciono.

INSERT INTO tbpos_hist SELECT *,'N','0' FROM tbpos_temp ON DUPLICATE KEY UPDATE procesado='N'

gracias.
__________________
:aplauso: Ivomat
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 05:12.