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

Join

Estas en el tema de Join en el foro de Mysql en Foros del Web. tengo las siguiente tablas . tbclientes_db( con primary key,codigo ,sucursal ,nom ,nit ) Y tbacum ( idcliente , fecha ,articulo,cantidad) . En la tabla clientes ...
  #1 (permalink)  
Antiguo 25/05/2006, 09:28
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
Mensaje Join

tengo las siguiente tablas .
tbclientes_db(con primary key,codigo ,sucursal ,nom ,nit )
Y tbacum ( idcliente, fecha ,articulo,cantidad) .

En la tabla clientes estan todos los clientes y en la tbacum estan los clientes que vendieron en una fecha . lo que quiero es listar todos los clientes que estan en clientes pero que no estan en la tabla acum. para una fecha dada.

gracias
__________________
:aplauso: Ivomat
  #2 (permalink)  
Antiguo 26/05/2006, 06:20
 
Fecha de Ingreso: abril-2006
Mensajes: 268
Antigüedad: 18 años
Puntos: 2
Si tu versión de mysql soporta subconsultas, podrías hacerlo de la siguiente manera:

SELECT * FROM tbclientes_db WHERE con NOT IN (SELECT idcliente FROM tbacum)

Y si no soporta subconsultas seria algo asi:

SELECT tbclientes_db.* FROM tbclientes_db LEFT JOIN tbacum ON tbclientes_db.con = tbacum.idcliente WHERE tbacum.idcliente IS NULL

Esta última forma quizá se ejecute un poco más rápido.

Saludos.
  #3 (permalink)  
Antiguo 26/05/2006, 09:13
 
Fecha de Ingreso: abril-2005
Ubicación: colombia
Mensajes: 242
Antigüedad: 19 años
Puntos: 0
si pero lo que yo quiero es listar los que estan en la tabla clientes y no estan en la tabla acum para una fecha. Segun el query que me das me retornan los que no estan en la tablaacum , pero no los que no estan para una fecha. por ej. el tbacum( 1, 2005-06-21), (2,2005-06-21) , (3,2005-06-20)
tbClientes ( 1, nombre .......) (3,pepe)

entonces me deberia retornar
(1,2005-06-20) (2,2005-06-20) y (3,2005-06-21)
y eso no pasa como hago esto.
__________________
:aplauso: Ivomat
  #4 (permalink)  
Antiguo 26/05/2006, 09:17
 
Fecha de Ingreso: abril-2006
Mensajes: 268
Antigüedad: 18 años
Puntos: 2
Bueno, entonces deberias agregarle esa condicion a la cláusula where de la subconsulta:

SELECT * FROM tbclientes_db WHERE con NOT IN (SELECT idcliente FROM tbacum WHERE fecha = tu_fecha)

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:24.