Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Sql para cambiar inf en un tabla a partir de los datos de otra

Poseo una base con tres tablas, Terceros, Facturas, Vendedores
Facturas tiene entre otros los campos numero, tercero, vendedor
Terceros tiene entre otros Nit, nombre y Vendedor
Vendedor tiene entre otros Codigovendedor, nombre vendedor

Necesito colocar para cada una de las facturas de la tabla facturas, el campo vendedor que esta en la tabla terceros,

Para mas explicacion, los vendedores que estan en este momento en la tabla facturas, no son los que necesito.
Se modifico la tabla terceros y se reasignaron los vendedores y necesito actualizar la tabla facturas con los nevos vendedores asignados en la tabla terceros.

Lo anterior lo reuqiero hacer mediante un sql
Lo de la tabla vendedores es solo un comentario.

SI me pueden indicar algun error en la enunciacion del tema muchas gracias.
__________________
Alvaro Rubio R
Responder Con Cita
  #2  
Antiguo 03-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Alvaro.

No tengo como comprobarlo en este equipo, pero probá de este modo:
Código SQL [-]
UPDATE FACTURAS T1
SET T1.VENDEDOR = (SELECT T2.VENDEDOR FROM TERCEROS T2
                   WHERE T1.TERCERO = T2.ID)

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 05-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Muchas gracias

Funciona perfecto, En la tabla de facturas tengo la fecha, si quisiera hacer el cambio solo para un rango de fechas enero01 de 2010 a Duciembre31 de 2011,
__________________
Alvaro Rubio R
Responder Con Cita
  #4  
Antiguo 05-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Alvaro.

Tendrías que especificarlo como condición en la clausula WHERE:
Código SQL [-]
UPDATE FACTURAS T1
SET T1.VENDEDOR = (SELECT T2.VENDEDOR FROM TERCEROS T2
                   WHERE T1.TERCERO = T2.ID)
WHERE T1.FECHA BETWEEN :F_DESDE AND :F_HASTA

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 05-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Gracias, lo prueba sobre mi base de datos.
__________________
Alvaro Rubio R
Responder Con Cita
  #6  
Antiguo 06-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Gracias, al aplicarlo me genera error SQL linea 4 char 23
El campo es tipo DATE, lo he colocado 01/01/2010, (01/01/2011) y "01/01/2010", y 12/31/2011, (12/31/2011) y despues del and 12/31/2011",
Se que es por el formato pero no he podido saber como va.

Muy novato debe de ser muy sencillo, Gracias
__________________
Alvaro Rubio R
Responder Con Cita
  #7  
Antiguo 06-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Alvaro.

En lugar de 12/31/2011 intenta con 31/12/2011 (con el formato: dia/mes/año).

Si no funciona así, vas a tener que detallar un poco más. Es decir: El mensaje de error en forma literal (click sobre el error, Ctrl+C para copiar y Ctrl+V para pegar aquí), lenguaje, manejador de bd y componentes con los que trabajas.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 06-03-2012 a las 04:58:11.
Responder Con Cita
  #8  
Antiguo 06-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Gracias,
estoy trabajando en ello.



Alvaro Rubio
__________________
Alvaro Rubio R
Responder Con Cita
Respuesta



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
Problema con Stored Procedure para actualizar tabla con datos de otra tabla. Adrian Murua MySQL 4 04-02-2012 02:54:49
crear tabla a partir de otra con sql JoseQ Conexión con bases de datos 4 12-01-2012 14:20:48
guardar datos a partir de otra tabla lucho1981 SQL 6 23-10-2010 03:33:01
Dbgrid para insertar en una tabla pero cogiendo datos de otra tabla taru MySQL 1 27-07-2006 15:36:12
¿Como se actualiza un campo de una tabla a partir de las columnas de otra? salvica SQL 12 09-07-2004 01:56:10


La franja horaria es GMT +2. Ahora son las 20:37:35.


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