Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 06-09-2012
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 15
MartinS Va por buen camino
Hola: Estuve mirando tu consulta y me quede pensando... ¿Es necesario que teniendo los datos en la tabla1, tabla2 y tabla3 juntes todo en una tabla4, es decir, estas duplicando registros y eso es como medio innecesario.

Por otra parte puedo indicarte el uso de Join para realizar tu consulta y dependera de cuales valores son los que queres que aparezcan si tienen o no correspondencia. Por ejemplo

Código SQL [-]
Select * From tabla1 left join tabla2 on tabla1Campo = Tabla2Campo

En ese caso trae todos los registros de la tabla1 o sea la de la izquierda tenga correspondencia o no con la tabla derecha y

Código SQL [-]
Select * From tabla1 right join tabla2 on tabla1Campo = Tabla2Campo

es el caso inverso, o sea la de la derecha.

Resultado: suponte que en una tabla cliente la relacionas con deudas por Left join y si ese cliente no tiene registros en deudas los valores a mostrar serian completados con null. Por Ejemplo (lo pongo como codigo para que diferencies los campos).-

Código:
Id    Apellido      Nombres      NroCta        IdCte      Deuda
1      Perez        Roberto        221             1          2300
2     Gomez        Jesus           225           null         null
3     Gonzalez     Juan            227            3           850
Como verás trae todos los clientes teniendo correspondencia o no con la de deudas.-
Con las tres tablas seria
Código SQL [-]
Select * From tabla1 left join tabla2 on tabla1Campo = Tabla2Campo 
                            left join tabla3 on tabla2Campo = Tabla3Campo

Espero que me hallas entendido algo y por ahí resuelves lo que necesitabas. Igualmente me parece poco eficiente que repitas o dupliques los datos en una tabla final (A menos que sea imprescindible para algo).-

Primero proba la consulta a traves del select sin el insert para ver si tenes todos los datos que necesitas y despues realiza las modificaciones para que inserte

Saludos

Última edición por MartinS fecha: 06-09-2012 a las 04:50:52.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Insert, select bosterito SQL 3 04-08-2008 12:29:28
Como hacer un Select, Insert, Update, Delete en SQL Server BlueSteel MS SQL Server 11 19-07-2007 10:02:42
Insert con Select salvica SQL 8 03-05-2006 22:01:17
insert into tabla values (select *... ¿? jorgesl SQL 15 11-04-2006 21:29:08
Problema conuna consulta select...not in (select ...) VRO Firebird e Interbase 2 11-08-2005 08:56:35


La franja horaria es GMT +2. Ahora son las 04:01:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi