Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   mostrar elementos de una tabla sin duplicados (https://www.clubdelphi.com/foros/showthread.php?t=89117)

elisma22 29-09-2015 03:44:27

mostrar elementos de una tabla sin duplicados
 
Saludos, mi duda radica en la siguiente situación, tengo una tabla en la que guardo el movimiento que tiene un expediente entre los distintas comisiones de una empresa y necesito filtrar los expedientes de una comisión en especifico, hasta ahí todo bien, pero mi problema se da cuando un expediente ya estuvo en una comisión , pero por alguna razón este vuelve a esa comisión
Código SQL [-]
num_expedientes     fecha_movimiento  hora_movimiento
  26                   16/09/2015      11:02:18 p.m.
  27                   17/09/2015      02:59:50 p.m.
  28                   17/09/2015      03:02:13 p.m.
  29                   17/09/2015      03:03:50 p.m.
  30                   17/09/2015      03:19:07 p.m.
  31                   17/09/2015      03:24:30 p.m.
  29                   28/09/2015      02:45:00 p.m.
como se en el ejemplo en expediente 29 se repite y lo que necesitaría es que solo se muestre el de fecha mas actual.
aqui les dejo la sentencia que estoy utilizando
Código SQL [-]
select num_expedientes, fecha_movimiento, hora_movimiento from expedientes inner join movimientos 
on expedientes.id_expediente = movimientos.id_expediente where comision_actual=16 and estado_exp=5;
// el campo de estado hace referencia a que el expediente esta aceptado por la comision actual
Espero que puedan ayudarme con este problema, desde ya agradezco sus respuestas

ecfisa 29-09-2015 04:52:31

Hola elisma22.

¿ Podrías indicar a que tablas respectivamente pertenecen las siguientes columnas ?
  • num_expedientes
  • fecha_movimiento
  • hora_movimiento
  • comision_actual
  • estado_exp
Saludos :)

elisma22 29-09-2015 06:37:40

Cita:

Empezado por ecfisa (Mensaje 497296)
Hola elisma22.

¿ Podrías indicar a que tablas respectivamente pertenecen las siguientes columnas ?
  • num_expedientes
  • fecha_movimiento
  • hora_movimiento
  • comision_actual
  • estado_exp
Saludos :)

num_expediente y estado_ exp pertenecen a la tabla expedientes; fecha_movimiento, hora_movimiento y comision_actual a la tabla movimientos.
la tabla de expediente y movimientos tiene sus propias claves primarias

ecfisa 29-09-2015 15:56:35

Hola.

Bien, entonces fijate si te funciona de este modo:
Código SQL [-]
SELECT E.NUM_EXPEDIENTES,
       M.FECHA_MOVIMIENTO,
       M.HORA_MOVIMIENTO
FROM EXPEDIENTES E
INNER JOIN MOVIMIENTOS M ON E.ID_EXPEDIENTE = M.ID_EXPEDIENTE
WHERE M.COMISION_ACTUAL = 16 AND E.ESTADO_EXP = 5
  AND M.FECHA_MOVIMIENTO = (SELECT MAX(M2.FECHA_MOVIMIENTO)
                            FROM MOVIMIENTOS M2 WHERE M.ID_EXPEDIENTE = M2.ID_EXPEDIENTE)

Saludos :)

elisma22 29-09-2015 17:56:42

Cita:

Empezado por ecfisa (Mensaje 497326)
Hola.

Bien, entonces fijate si te funciona de este modo:
Código SQL [-]
SELECT E.NUM_EXPEDIENTES,
       M.FECHA_MOVIMIENTO,
       M.HORA_MOVIMIENTO
FROM EXPEDIENTES E
INNER JOIN MOVIMIENTOS M ON E.ID_EXPEDIENTE = M.ID_EXPEDIENTE
WHERE M.COMISION_ACTUAL = 16 AND E.ESTADO_EXP = 5
  AND M.FECHA_MOVIMIENTO = (SELECT MAX(M2.FECHA_MOVIMIENTO)
                            FROM MOVIMIENTOS M2 WHERE M.ID_EXPEDIENTE = M2.ID_EXPEDIENTE)

Saludos :)

muchísimas gracias, funciona de maravilla :D v:-)v


La franja horaria es GMT +2. Ahora son las 13:32:20.

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