none
Seleccionar valor maximo SQL RRS feed

  • Pregunta

  • Saludos,

    Necesito realizar una consulta en la cual me arroje el dato de la siguiente manera; 

    Nombre de la tabla: ESTILOS

    Campo que necesito: G4GSTY, G4GCOL, G4GSIZ, G4QTY, G4WLOS, G4PART, G4PPNO, G4EFDT

    G4EFDT es mi campo de fecha y necesito que sea la mas reciente.

    G4PART tiene las siguientes condiciones. Que sea igual a ('LA' AND '25' AND '7K' AND '7Q')

    Ejemplo. Fijense que en para este estilo 3WTT07 me arroja diversas fechas (G4EFDT), pero necesito que en la consulta me arroje solamente la fecha mas alta como esta seleccionada en la imagen de muestra (181014).

    Posdata: Las fecha van a varias dependiendo el estilo.

     

    jueves, 27 de junio de 2019 17:55

Todas las respuestas

  • Hola DewinRD:

    Aunque hablas de fechas, eso solo parece un varchar, ya que estas en el foro SQL.

    create table TBL (G4GSTY VARCHAR(10), G4GSCA VARCHAR(10), G4PART INT, G4SEQN INT, G4PPNO VARCHAR(10), G4EFDT INT, G4QTY FLOAT) GO INSERT INTO TBL (G4GSTY, G4GSCA, G4PART, G4SEQN, G4PPNO, G4EFDT, G4QTY) VALUES ('3WTT07','#',25,953090,'AP5351',181014,4 ), ('3WTT07','#',25,953080,'PC696 ',181014,0.1666), ('3WTT07','#',25,953070,'ASL428',181014,4 ), ('3WTT07','#',25,953060,'ASJ224',181014,4 ), ('3WTT07','#',25,953020,'API301',181014,2 ), ('3WTT07','#',25,953090,'AP5351',180610,4 ), ('3WTT07','#',25,953080,'PC696 ',180610,0.1666), ('3WTT07','#',25,953070,'ASL428',180610,4 ), ('3WTT07','#',25,953060,'ASJ224',180610,4 ), ('3WTT07','#',25,953020,'API301',180610,2 ), ('3WTT07','#',25,953080,'PC696 ',180429,0.1666), ('3WTT07','#',25,953070,'ASL428',180429,4 ), ('3WTT07','#',25,953060,'ASJ224',180429,4 ); GO -- OPCION 1 select * from tbl where G4EFDT = (SELECT MAX(G4EFDT) FROM TBL) -- OPCION 2 SELECT * FROM TBL WHERE G4EFDT = (SELECT TOP(1) G4EFDT FROM TBL ORDER BY G4EFDT DESC);

    -- OPCION 3
    SELECT TBL.G4GSTY, 
           TBL.G4GSCA, 
           TBL.G4PART, 
           TBL.G4SEQN, 
           TBL.G4PPNO, 
           MAX(TBL.G4EFDT) AS G4EFDT, 
           TBL.G4QTY
    FROM TBL
    GROUP BY TBL.G4GSTY, 
             TBL.G4GSCA, 
             TBL.G4PART, 
             TBL.G4SEQN, 
             TBL.G4PPNO, 
             TBL.G4QTY;


    Salida

    jueves, 27 de junio de 2019 19:18
  • Otra opcion seria usar la sub-clausula TOP ... WITH TIES.

    select top (1) with ties
    from T
    where ...
    order by G4EFDT DESC;



    AMB

    Some guidelines for posting questions...

    AYÚDANOS A AYUDARTE, guía básica de consejos para formular preguntas

    jueves, 27 de junio de 2019 19:36