Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   select a 3 tablas yel resultado a insert a otra tabla (http://www.forosdelweb.com/f86/select-3-tablas-yel-resultado-insert-otra-tabla-417600/)

andersfriden 16/08/2006 09:31

select a 3 tablas yel resultado a insert a otra tabla
 
hola tengo 3 tablas de las cual hago esta consulta:

Código PHP:

SELECT FROM prueba_item,prueba_texto,texto_item WHERE 

prueba_item
.cod_prueba=prueba_texto.cod_prueba and prueba_item.cod_item=texto_item.cod_item 

and prueba_texto.cod_texto=texto_item.cod_texto 

ahora quiero insertar algunos camps del resultado en una tabla llamada prueba_item_texto

es posible??

PequeñoMauro 16/08/2006 09:41

Si es posible, solo especifica los campos en tu SELECT y deben ser de igual tipo que los campos que vas a insertar.

andersfriden 16/08/2006 10:35

INSERT INTO prueba_item_texto(cod_prueba,cod_texto,cod_item,nu m_texto,num_item,ubicacion)
SELECT
prueba_item.cod_prueba,prueba_texto.cod_texto,prue ba_item.cod_item,prueba_texto.num_texto,prueba_ite m.num_item,prueba_texto.ubicacion,texto_item.cod_i tem,texto_item.cod_texto,prueba_texto.cod_prueba FROM prueba_item,prueba_texto,texto_item WHERE
prueba_item.cod_prueba=prueba_texto.cod_prueba and prueba_item.cod_item=texto_item.cod_item
and prueba_texto.cod_texto=texto_item.cod_texto

eso deberia funcionar pero me lanza el siguiente error:

#1054 - Unknown column 'prueba_texto.num_texto' in 'field list'

PequeñoMauro 16/08/2006 10:58

Esa tabla tiene esa columna?

andersfriden 16/08/2006 11:20

Sip , tiene estos campos:
cod_prueba,cod_texto,cod_item,nu m_texto,num_item,ubicacion

PequeñoMauro 16/08/2006 11:26

Esta asi separado? "nu m_texto"....
En tu SELECT ese campo no esta separado, me refiero a nu m, en el INSERT veo que tambien esta igual....
Jejeje, me parece raro...

andersfriden 16/08/2006 12:36

ya lo logre hacer pero me dice que me inserta todos los registros (2800) ,voy y reviso la tabla y solo hay 15 registros , que sera??


INSERT INTO prueba_item_texto(cod_prueba,cod_texto,cod_item,nu m_texto,num_item,ubicacion)
SELECT prueba_item.cod_prueba,prueba_texto.cod_texto,prue ba_item.cod_item,prueba_texto.num_texto,prueba_ite m.num_item,prueba_texto.ubicacion,texto_item.cod_i tem,texto_item.cod_texto FROM prueba_item,prueba_texto,texto_item WHERE
prueba_item.cod_prueba=prueba_texto.cod_prueba and prueba_item.cod_item=texto_item.cod_item
and prueba_texto.cod_texto=texto_item.cod_texto

PequeñoMauro 16/08/2006 13:58

Te haz fijado antes, cuantas filas te bota la consulta que haces???, si te manda más registros, definitivamente es por la consulta que estas efectuando
Saludos


La zona horaria es GMT -6. Ahora son las 06:33.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.