Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-04-2013
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Registros repetidos Firebird

Hola a todos

Tengo una consulta en SQL:
Código SQL [-]
SELECT NOTA,FACT,p.VR,p.SA,VALO,FECH,OBSE
FROM NOTAS
LEFT JOIN PROC_FCPDTES((SELECT CLIEN FROM FACTU WHERE ID_FC = FACT),'','') p ON 1=1
WHERE NOTA LIKE 'ND%'
Esta consulta me da los siguientes registros:
ND0000001__FC0000009__2640000__2476000__1000__08.04.2013
ND0000001__FC0000009__1601000___111000__1000__08.04.2013
ND0000002__FC0000008__2640000__2476000__2000__08.04.2013
ND0000002__FC0000008__1601000___111000__2000__08.04.2013


En la tabla NOTAS solo hay dos registros:
ND0000001__FC0000009__1000__08.04.2013
ND0000002__FC0000008__2000__08.04.2013

el PROC_FCPDTES tambien posee dos registros:
FC0000007__19.03.2013__2640000__2476000
FC0000009__19.03.2013__1601000___111000


No se como evitar que se dupliquen los registros, ya he incluido DISTINCT en FACT pero me arroja este error:
SQL error code = -104
Token unknow

Gracias de antemano por su ayuda.
Responder Con Cita
  #2  
Antiguo 15-04-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
me parece que los datos que has puesto en el ejemplo no corresponden a la consulta
porque yo veo que todos los registros son diferentes
si puedieras explicar con un poco mas de detalles que es lo que necesitas quiza alguien pueda darte una mano
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 15-04-2013
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Gracias por responder, si son los datos lo que pasa es que muestro los registros que hay en cada tabla, pero quizas no me explique bien.
Entonces:
- Los campos de la tabla NOTAS son NOTA,FACT,VALO,FECH,OBSE
- Los campos del procedimiento PROC_FCPDTES son VR,SA
- El campo fecha en el procedimiento PROC_FCPDTES no lo tengo en cuenta para la consulta
Responder Con Cita
  #4  
Antiguo 15-04-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
como se relacionan esas 2 tablas?
cual es el campo en comun?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #5  
Antiguo 15-04-2013
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
en NOTAS se llama FACT y en PROC_FCPDTES se llama FA
Responder Con Cita
  #6  
Antiguo 15-04-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
A ver intenta de esta forma
Código SQL [-]
SELECT NOTA,FACT,p.VR,p.SA,VALO,FECH,OBSEFROM NOTAS nLEFT JOIN PROC_FCPDTES p on N.FACT = P.FA WHERE NOTA LIKE 'ND%'
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #7  
Antiguo 15-04-2013
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
se me olvido comentar otra cosa:
el PROC_FCPDTES(1,2,3) tiene 3 parametros de entrada, el parametro 2 y 3 los dejo vacio y el 1 solicita es el codigo del cliente CLIEN que lo saco de una tabla de facturas SELECT CLIEN FROM FACTU WHERE ID_FC = FACT > este campo esta en notas
Responder Con Cita
  #8  
Antiguo 15-04-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
ya me confundiste mas

ese PROC_FCPDTES es un procedimiento? es una tabla? que es?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #9  
Antiguo 15-04-2013
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
es un procedimiento, pero ya arregle el problema, me diste la idea y fue reemplazar
LEFT JOIN PROC_FCPDTES((SELECT CLIEN FROM FACTU WHERE ID_FC = FACT),'','') p ON 1=1
por esto
LEFT JOIN PROC_FCPDTES((SELECT CLIEN FROM FACTU WHERE ID_FC = FACT),'','') p ON FACT=FA
ahi ya no repite registros, gracias por tu ayuda me sirvio para guiarme
Responder Con Cita
  #10  
Antiguo 15-04-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
ok me da gusto saber q fui de ayuda,
pero para la prox... trata de dar un mejor mensaje a la primera
con todos los datos, cosa que tendremos una mejor idea que problema

saludos
__________________
Dulce Regalo que Satanas manda para mi.....
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
borrrar registros repetidos calco_hugo SQL 11 05-12-2011 22:09:02
mostrar registros repetidos jmlifi SQL 3 20-10-2011 21:15:50
Registros repetidos alegarreta SQL 6 16-04-2010 20:59:51
Eliminar Registros Repetidos en FireBird Blasito Firebird e Interbase 4 18-02-2009 16:03:22
Registros repetidos enecumene PHP 9 01-02-2007 18:17:04


La franja horaria es GMT +2. Ahora son las 18:37:02.


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