Tablas - agregar campo de otra tabla

Acalo finalicé l pregunta sin querer te paso lo que me pediste:
Por ejemplo la tabla filiales que tiene los campos nro, nombre,
dir y tel le quiero agregar los campos ip y name de la tabla server.
Saludos, Aquiles
#################################
Tablas - agregar campo de otra tabla (11/5/2003)
MAESTROS! A ver si y les pasó ... Tengo una tabla de por ejemplo
productos. Quisiera, por ´´única vez, a esta tabla anexarle tres
campos que están en otra tabla (no todos los productos se encuentran
en la segunda). Como estoy acostumbrado a trabajar con excel,
esto lo hubiera realizado con la fórmula buscarv. ¿Se puede trabajar
con tablas como si fueran hojas de cálculo? ¿Cómo sería?, ¿Tendría
qué armar una macro?, ¿Tendría qué armarlo con Visual Basic?.
Chas gracias! Y saludos!
Re: Tablas - agregar campo de otra tabla (11/5/2003)
Lo más fácil es hacelo mediante una consulta que te cree una
tabla nueva, dame los nombres de las tablas y los campos de
cada tabla, y la tabla que quieres tener y te escribo la sentencia SQL
Respuesta
1
Con los datos que me das solo te puedo responder esto.
Las dos tablas deben tener algún campo en común (supongo que estarán relacionadas, sino es así dímelo que la cosa cambia), este es el campo que debes poner en la cláusula INNER JOIN.
Te mando un ejemplo de sentencia SQL, debes realizar los cambios que necesites y teclearlo en la vista SQL de las consultas.
Abre una nueva consulta ve a vista SQL y copia la sentencia:
SELECT Filiales.*, Server.IP, Server.name INTO NuevaTabla
FROM Filiales INNER JOIN Server ON Filiales.Name=Server.Name;
Aquí estoy suponiendo que quieres todos los campos de la tabla Filiales y dos de la tabla Server, pero desconozco cual es la unión de las dos tablas. Supongo que cada filial tiene un servidor y que este campo está también en la tabla filiales y entonces creo una nueva tabla que añade el campo IP de servidor.
Si esto no soluciona tu problema, dame el campo en común y la relación entre las tablas (es decir si todos los registros de las dos tablas tienen una relación en la otra, o todos los registros de la primera tienen relación en la segunda pero no al revés, o todos los registros de la segunda tienen relación en la primera pero no al revés), y te rescribo la sentencia.
Tienes razón en el ejemplo que te pasé me falta el campo nro de la tabla server (este campo es el que coincide con el nro de filiales. Probé de la manera que me pasaste llevándolo a la tablas que tengo, pero la tabla nueva que se crea no contiene las filiales que no tienen server. ¿Para qué las incluya que debo agregarle a la sentencia SQL?
Te paso la modificación que había omitido:
SELECT Filiales.*, Server.IP, Server.name INTO NuevaTabla
FROM Filiales INNER JOIN Server ON Filiales.nro=Server.nro;
Acalo:
Hoy estuve buscando y encontré lo que acabo de preguntar, sería reemplarzar INNER por LEFT. Te agradezco mucho tu esfuerzo, me sirvió de mucho, no solo para resolver esta necesidad que lo has logrado en forma extraordinaria sino que me iniciaste en el SQL, cosa que hasta el momento no le había encontrado uso, ya que el access lo disfraza bastante, pero en definitiva es como todo estudiar y practicar.
¡Muchas gracias !
:-)) ((-:

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas