Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/07/2015, 19:43
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Insert de un select con algunas columnas

Cita:
Iniciado por metalfox6383 Ver Mensaje
Sí, claro. Como ves en mi "intento", estaba especificando qué columnas. La diferencia con tu sentencia es que no colocas "values", y lo ponía creyendo que era necesario.

Muchas gracias.
Para ser mas preciso, cuando haces un INSERT INTO tabla, donde indicas valores desde variables o constantes, debes ponerlos dentro de un VALUES(). P
Pero la pregunta que hacías es cuando usas
Código SQL:
Ver original
  1. INSERT INTO tabla (...)
  2. SELECT ...
  3. FROM ....
En ese caso no es necesario, porque cada registro devuelto por el SELECT es un set de valores cerrado, es decir un set de VALUES.
La única condición es que el SELECT debe devolver la misma cantidad de columnas que se requieran para el INSERT, y en ese sentido es lo que te dijeron: a menos que la tabla tenga exactamente las mismas columnas, del mismo tipo y en el mismo orden, deben indicarse una a una las columnas de la tabla destino,
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)