OBTENER FECHA MAS RECIENTE DE LISTADO DE ORDENES DE SERVICIO

José Arturo Ramos Pérez 0 Puntos de reputación
2024-08-04T18:24:21.42+00:00

BUEN DIA A TOD@S

ESTOY TRATANDO DE REALIZAR UNA CONSULTA EN LA CUAL ME MUESTRE EL MANTENIMIENTO DE LOS 40 MIL KM DE TODOS LOS VEHICULOS EN LAS ORDENES DE SERVICIO, YA PUDE REALIZAR UNA CONSULTA EN LA CUAL ME MUESTRA LAS VECES QUE SE LE HA REALIZADO ESTE MANTENIMIENTO A LAS UNIDADES, AHORA QUIERO LOGRAR QUE ME MUESTRE EL MANTENIMIENTO DE LOS 40 MIL MAS RECIENTE DE CADA UNIDAD, ESTA ES LA QUERY QUE TENGO HASTA EL MOMENTO:

Select ORDN_UNIDAD,ORDN_NUMERO,SER_CONCEPTO,CON_CONCEPTO, ORDN_FECHASALIDA FROM MtOrdenes

INNER JOIN Servicios

ON ORDN_NUMERO = SER_ORDEN AND ORDN_SUCURSAL = SER_SUCURSAL

LEFT JOIN CONCEPTO

ON SER_CONCEPTO = CON_NUMERO

WHERE SER_CONCEPTO = 4296 AND ORDN_ESTATUS != 'C'

ORDER BY ORDN_UNIDAD

Y ME MUESTRA EN LA IMAGENUser's image

LO QUE QUIERO LOGRAR ES QUE DE LA UNDAD, 1,2,3,4........... ME MUESTRE EN ORDN_FECHASALIDA LA FECHA MAS RECIENTE POR UNIDAD (ORDN_UNIDAD)

HE INTENTADO CON SUBCONSULTAS PERO NO LO HE PODIDO CONSEGUIR, ESTA ES LA QUERY DE SUBCONSULTA

Select Mt.ORDN_UNIDAD,Mt.ORDN_NUMERO,S.SER_CONCEPTO,C.CON_CONCEPTO, Mt.ORDN_FECHASALIDA FROM MtOrdenes Mt

INNER JOIN Servicios S

ON Mt.ORDN_NUMERO = S.SER_ORDEN AND Mt.ORDN_SUCURSAL = S.SER_SUCURSAL AND Mt.ORDN_FECHASALIDA =

(SELECT Mt.ORDN_UNIDAD,MAX(Mt.ORDN_FECHASALIDA) FROM MtOrdenes where S.SER_ORDEN=Mt.ORDN_NUMERO and S.SER_SUCURSAL=Mt.ORDN_SUCURSAL

GROUP BY Mt.ORDN_UNIDAD)

LEFT JOIN CONCEPTO C

ON S.SER_CONCEPTO = C.CON_NUMERO

WHERE S.SER_CONCEPTO = 4296 AND Mt.ORDN_ESTATUS != 'C'

ORDER BY Mt.ORDN_UNIDAD

PERO ME DA ERROR.

ESPERO ME PUEDAN AYUDAR, ORIENTANDOME.

SALUDOS DESDE MÉXICO.

SQL Server
SQL Server
Familia de sistemas de análisis y administración de bases de datos relacionales de Microsoft para soluciones de comercio electrónico, línea de negocio y almacenamiento de datos.
109 preguntas
0 comentarios No hay comentarios
{count} votos

1 respuesta

Ordenar por: Muy útil
  1. javi Fernandez 185 Puntos de reputación
    2024-08-05T19:44:20.52+00:00

    Hola José Arturo Ramos Pérez:

    Varias cositas de la pregunta.

    En los foros nunca se pregunta en mayúsculas. Parece ser que las personas se pueden ofender, porque se entiende que es sinónimo de Gritar. (Por esta parte a mi personalmente no me importa mucho).

    Me da error, no significa nada, para nadie sino pegas explícitamente el error. Puede ser que menciones una columna que no existe, que sea sintaxis, que sean muchas cosas, que no podemos sobreentender.

    En la subconsulta, no tiene muchos sentido en TSQL, donde la estas planteando.

    Si quieres obtener el máximo de algo, puedes hacerlo de una manera muy fácil, utilizando el operador Apply.

    OperadorApply

    Esa sección de ese artículo, parece cubrir lo que solicitas.

    0 comentarios No hay comentarios

Su respuesta

Las respuestas se pueden marcar como respuestas aceptadas por el autor de la pregunta, lo que ayuda a los usuarios a conocer la respuesta que resolvió el problema del autor.