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 24-09-2013
pame pame is offline
Registrado
NULL
 
Registrado: jul 2013
Posts: 6
Poder: 0
pame Va por buen camino
como eliminar la duplicidad de datos

Buenos dias
Necesito ayuda, tengo mi query inventario en delphi y cuando lo hago correr en un rango de fechas se duplican los datos, porfa necesito su ayuda urgente
muchas gracias


este es el TADOquery:

Código Delphi [-]
SELECT DISTINCT fv.fecha,fc.fecha,a.cod_producto, a.nombre, a.stock, COALESCE(b.compras, 0::double precision) AS compras, COALESCE(a.ventas, 0::double precision) AS ventas, 
        CASE
            WHEN b.compras IS NULL AND a.ventas IS NULL THEN a.stock::double precision
            WHEN b.compras IS NULL THEN a.stock::double precision - a.ventas
            WHEN a.ventas IS NULL THEN a.stock::double precision + b.compras
            ELSE a.stock::double precision + b.compras - a.ventas
        END AS stock_actual

   FROM factura_vent fv, factura_comp fc,( SELECT p.cod_producto, p.nombre, p.stock, sum(v.cantidad) AS ventas
           FROM producto p
      LEFT JOIN detalle_venta v ON p.cod_producto::text = v.cod_producto::text
     GROUP BY p.cod_producto, p.nombre, p.stock) a, 
     ( SELECT p.cod_producto, p.nombre, p.stock, sum(c.cantidad) AS compras
           FROM producto p 
      LEFT JOIN detalle_compra c ON p.cod_producto::text = c.cod_producto::text
     GROUP BY p.cod_producto, p.nombre, p.stock) b
     
 WHERE (a.cod_producto::text = b.cod_producto::text) and 
  (fc.fecha between :fic and :ffc)and(fv.fecha between :fiv and :ffv)

donde:
fic: es fecha inicial de compra
ffc: es fecha fin de compra
fiv: es fecha inicial de venta
ffv: es fecha fin de venta
Responder Con Cita
  #2  
Antiguo 30-09-2013
Avatar de juanlaplata
juanlaplata juanlaplata is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Plata, Bs. As. (Argentina)
Posts: 212
Poder: 18
juanlaplata Va por buen camino
No veo en que momento se hace join de facturas con detalles ....
EJ (fv.cod_factura = a.cod_factura)
siendo fv = factura_vent
y a =
Código SQL [-]
( SELECT p.cod_producto, p.nombre, p.stock, sum(v.cantidad) AS ventas
            FROM producto p LEFT JOIN detalle_venta v ON p.cod_producto::text = v.cod_producto::text
           GROUP BY p.cod_producto, p.nombre, p.stock )
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
¿Como eliminar Una Tabla en una Base de datos De Access? feliz-58 Varios 13 25-04-2013 19:45:38
Duplicidad de registros jimmy_aei Firebird e Interbase 10 05-01-2012 22:05:43
Duplicidad de datos a la hora de imprimir - Fastreport Nilson Zabaleta Impresión 0 27-10-2008 14:30:11
Como evitar duplicidad en un dbgrid? alcides OOP 8 06-02-2007 21:06:48
Como eliminar la solicitud de password de una base de datos MRSAM Conexión con bases de datos 0 07-01-2005 16:34:11


La franja horaria es GMT +2. Ahora son las 10:59:13.


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