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

[SOLUCIONADO] mostrar en una tabla el contenido de dos tablas

Estas en el tema de mostrar en una tabla el contenido de dos tablas en el foro de Bases de Datos General en Foros del Web. Hola amigas/os, verán tengo una duda. Recién me han dicho que teniendo dos tablas con su correspondiente informacion en cada una. Pues que muestre el ...
  #1 (permalink)  
Antiguo 09/05/2018, 02:26
 
Fecha de Ingreso: mayo-2012
Mensajes: 713
Antigüedad: 6 años, 4 meses
Puntos: 5
mostrar en una tabla el contenido de dos tablas

Hola amigas/os, verán tengo una duda.

Recién me han dicho que teniendo dos tablas con su correspondiente informacion en cada una. Pues que muestre el contenido de ambas tablas en una sola.

Estoy familiarizado con las funciones basicas de seleccionar, insertar, actualizar y borrar.
Pero esto, la verdad es que es algo que no he hecho nunca.

He estado investigando en internet y he visto la opcion "join" y "union".
Y me crea confusion las dos las veo parecidas.

Si puderan hacerme un sencillo y simple ejemplo con estas dos tablas que pongo.
Creo que ya podria seguir yo haciendo algo ya mas complejo.
Solo necesito este pequeño ejemplo a modo de empujon.
Mil gracias de antemano.


nombre tabla 1: pizzas.sql
campos:
id --- nombre--------------precio
1-----pizza margarita---- 15


nombre tabla 2: postres.sql
campos:
id --- nombre-----------------precio
1-----tarta de manzana---- 12



Y lo que necesito, y no se hacer, deberia ser algo asi:

nombre tabla 3: menuCompleto.sql
campos:
id --- nombre--------------precio
1-----pizza margarita------- 15
2-----tarta de manzana---- 12
  #2 (permalink)  
Antiguo 09/05/2018, 07:42
 
Fecha de Ingreso: mayo-2011
Ubicación: Aguascalientes, México
Mensajes: 32
Antigüedad: 7 años, 4 meses
Puntos: 5
Respuesta: mostrar en una tabla el contenido de dos tablas

Eso lo puedes hacer con un "union" algo como esto:
Cita:
select id,nombre,precio from pizzas
union
select id,nombre,precio from postres
Ojo aquí en primer lugar te debes de asegurar que los campos de las tablas que estés uniendo sea la misma cantidad y se llamen igual, de lo contrario no podrás hacer dicha unión, por otro lado si utilizas solamente "union" el resultado solamente te va a mostrar valores únicos d ambas tablas pero si en determinado momento necesitas que te muestre registros duplicados que pudieras tener en ambas tablas entonce puedes usar "union all"

Espero esto te ayude, saludos
  #3 (permalink)  
Antiguo 09/05/2018, 08:20
 
Fecha de Ingreso: mayo-2012
Mensajes: 713
Antigüedad: 6 años, 4 meses
Puntos: 5
Respuesta: mostrar en una tabla el contenido de dos tablas

Muchas gracias romaneska
  #4 (permalink)  
Antiguo 13/05/2018, 01:47
 
Fecha de Ingreso: mayo-2012
Mensajes: 713
Antigüedad: 6 años, 4 meses
Puntos: 5
Respuesta: mostrar en una tabla el contenido de dos tablas

Lo de antes es decir lo de UNION ALL , no me vale por que solo une los datos cuando se muestran por pantalla y lo que necesito es que se unan los datos de dos tablas en
solo una pero en la misma base de datos y que desde alli, se muestren en una sola tabla.

Por eso, acabo de darme cuenta que lo que necesito realmente es copiar los datos de una tabla A, a una tabla B.
Y para ello he hecho esto otro que para variar no me funciona.
Una ayudita por favor.


Código PHP:
Ver original
  1. function conexBBDD ()
  2.  
  3.                 {
  4.                     //Conecto con la BBDD servidor, usuario, contraseña, nombreBBDD
  5.  
  6.                     $link = mysqli_connect("localhost", "root", "", "bbdd_historial");
  7.  
  8.                      
  9.  
  10.                     //Compruebo la conexión
  11.  
  12.                     if($link === false)
  13.  
  14.                         {
  15.                             die("ERROR: <b>No se puede conectar a la base de datos.</b> " . mysqli_connect_error());
  16.                         }
  17.  
  18.                         else
  19.  
  20.                         {
  21.                             return $link;
  22.                         }
  23.                 }


Código PHP:
Ver original
  1. function numUnionTblBBDDdos($link)
  2.  
  3.                 {
  4.                     $link->query("INSERT INTO tarifa_proveedor SELECT * FROM tabla_datos");
  5.                 }
  6.  
  7.  
  8.  
  9.             numUnionTblBBDDdos (conexBBDD ());

Última edición por mensajeescrito; 13/05/2018 a las 05:23
  #5 (permalink)  
Antiguo 13/05/2018, 16:28
 
Fecha de Ingreso: febrero-2016
Mensajes: 36
Antigüedad: 2 años, 7 meses
Puntos: 2
Respuesta: mostrar en una tabla el contenido de dos tablas

Si lo que necesitas es unirlas las tablas (exportar los datos de una a otra ) y de una forma definitiva para luego trabajar con esa tabla combinada, podrías usar phpmyadmin, seleccionando "Operaciones", y luego "Copiar tabla a..." marcando la opción de solo datos.
  #6 (permalink)  
Antiguo 14/05/2018, 14:09
Avatar de KATHYU  
Fecha de Ingreso: julio-2013
Mensajes: 545
Antigüedad: 5 años, 3 meses
Puntos: 44
Respuesta: mostrar en una tabla el contenido de dos tablas

Cita:
Iniciado por mensajeescrito Ver Mensaje
Lo de antes es decir lo de UNION ALL , no me vale por que solo une los datos cuando se muestran por pantalla y lo que necesito es que se unan los datos de dos tablas en
solo una pero en la misma base de datos y que desde alli, se muestren en una sola tabla.

Por eso, acabo de darme cuenta que lo que necesito realmente es copiar los datos de una tabla A, a una tabla B.
Y para ello he hecho esto otro que para variar no me funciona.
Una ayudita por favor.
Dudas:
1- Las tablas a unir tienen la misma estructura?? ID, Nombre, Precio ????

2- Ya verifico que la tabla de llegada no tenga que el ID es unico ?? Porque hace un select * from de su tabla secundaria.

3- Ya probo hacer el insert exacto de los campos ??

No se si este bien escrita, lo hice mental
Código MySQL:
Ver original
  1. INSERT INTO TablaFinal ('',nombre,precio) VALUES (SELECT nombre,precio from pizzas)
__________________
Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico.
  #7 (permalink)  
Antiguo 17/05/2018, 01:00
 
Fecha de Ingreso: mayo-2012
Mensajes: 713
Antigüedad: 6 años, 4 meses
Puntos: 5
Respuesta: mostrar en una tabla el contenido de dos tablas

Muchas gracias me sirvio y aprendi algo nuevo



La zona horaria es GMT -6. Ahora son las 05:32.