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 08-09-2014
Avatar de lbidi
lbidi lbidi is offline
Miembro
 
Registrado: oct 2003
Ubicación: Montevideo- URUGUAY
Posts: 417
Poder: 21
lbidi Va por buen camino
No repetir lineas

Estimados.

Tengo el siguente codigo.
Código Delphi [-]
Select o.Fecha, o.Ficha, o.Nombre, a.Estudio, e.Descripcion, o.Timbres, o.Carnet
From Ordenes o
Left Outer Join Analisis   a on o.Numero   = a.Numero
Left Outer Join Estudios   e on a.Estudio  = e.Estudio
Left Outer Join Pacientes  p on o.Paciente = p.Numero
Where o.Fecha Between '01/09/2014' and '01/09/2014'

y me da como resultado tantas lineas de la tabla ordenes ( master ) como encuentre en la tabla analisis ( detail ), esta correcto como lo hace, pero mi duda , es como puedo hacer para que los campos timbres y carnet de la tabla ordenes salgan una sola vez y no se me repitan por cada detalle ( analisis ) que encuentre. Se entiende ?

Utilizo Advantage pero la rutina deberia funcionar en cualquier bd supoongo.
Gracias
Responder Con Cita
  #2  
Antiguo 08-09-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cambia left por inner.
Responder Con Cita
  #3  
Antiguo 09-09-2014
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
Si, usar INNER JOIN y si no entendí mal, además le agregaría DISTINCT.

Código SQL [-]
SELECT DISTINCT  O.TIMBRES, O.CARNET, O.FECHA, O.FICHA, O.NOMBRE, A.ESTUDIO, E.DESCRIPCION
FROM ORDENES O
INNER JOIN ANALISIS A ON O.NUMERO = A.NUMERO
INNER JOIN ESTUDIOS E ON A.ESTUDIO = E.ESTUDIO
INNER JOIN PACIENTES P ON O.PACIENTE = P.NUMERO
WHERE O.FECHA BETWEEN :DESDE AND :HASTA
Pero no estoy totalmente seguro de como deberían estar establecidas las relaciones...

Saludos
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 09-09-2014 a las 02:25:13.
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
Realizar Join entre n1 líneas de una tabla y n2 líneas de otra tabla gluglu SQL 7 15-04-2011 20:33:19
Repetir una accion lmpadron C++ Builder 5 29-07-2010 20:21:31
Repetir valor altp SQL 7 27-06-2007 13:23:05
Es sano repetir? Johnny Q OOP 4 12-07-2005 21:09:51
no repetir campos ebeltete SQL 5 22-05-2003 04:32:53


La franja horaria es GMT +2. Ahora son las 11:39:36.


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