Enigma de SQL, cómo seleccionar la última fecha para la parte, pero solo 1 fila por parte (única)

Estoy tratando de entender esto esta mañana.

Estoy tratando de mostrarinventory estado para partes (para nuestros productos) y esta consulta solo se vuelve compleja si intento devolver todas las partes.

Déjame exponerlo:

mesa individualinventoryReportTengo una lista distinta de X partes que deseo mostrar, cuyo resultado debe ser X # de filas (1 fila por parte que muestra la última entrada de inventario).la tabla está compuesta por entradas fechadas de cambios de inventario (por lo que solo necesito elLATEST fecha de entrada por parte).todos los datos contenidos en esta tabla única, por lo que no se necesitan uniones.

Actualmente para 1 sola parte, es bastante simple y puedo lograr esto haciendo el siguiente sql (para darle una idea):

SELECT     TOP (1) ldDate, ptProdLine, inPart, inSite, inAbc, ptUm, inQtyOh + inQtyNonet AS in_qty_oh, inQtyAvail, inQtyNonet, ldCustConsignQty, inSuppConsignQty
FROM         inventoryReport
WHERE     (ldPart = 'ABC123')
ORDER BY ldDate DESC

eso me da mi fila TOP 1, tan simple por parte, sin embargo, necesito mostrar todas las X (digamos 30 partes). Entonces necesito 30 filas, con ese resultado. Por supuesto, la solución simple sería hacer un bucle X # de llamadas sql en mi código (pero sería costoso) y eso sería suficiente, pero para este propósito me encantaría trabajar este SQL un poco más para reducir las llamadas x # a la base de datos (si no es necesario) a solo 1 consulta.

Por lo que puedo ver aquí, necesito hacer un seguimiento de la última fecha por elemento de alguna manera mientras busco mi conjunto de resultados.

En última instancia, haría un

WHERE ldPart in ('ABC123', 'BFD21', 'AA123', etc)

para limitar las partes que necesito. Espero haber hecho mi pregunta lo suficientemente clara. Avísame si tienes una idea. No puedo hacer unDISTINCT Como las filas no son iguales, la fecha debe ser la última y necesito un máximo de X filas.

Pensamientos? Estoy atascado...

Respuestas a la pregunta(3)

Su respuesta a la pregunta