Per un mio amico dovrei creare un database che lo aiuti a gestire le sue scorte di "magazzino", facendo uscire pre primi i prodotti che sono in magazzino da più tempo.
Ho provato in più modi ma non riesco ad ottenere il risultato desiderato.
Riporto qui un esempio.
Ho una Tabella "Ordini" in cui ho il "Codice" del pezzo.
La tabella "Stock" ha le colonne "Codice" "Seriale" "Data"
Un Codice ha più Seriali.
La query che sto cercando di fare al momento mette in ordine di data "più vecchia" però non restituisce giustamente i seriali ma tutti i seriali presenti nella Tabella Stock che hanno il codice presente nella tabella Ordini.
Esempio :
Tabella Ordini :
- Codice
A
B
A
C
Tabella Stock :
- Codice Seriale Data
A 1 25/03/2011
A 2 25/02/2011
A 3 25/01/2011
B 25 14/02/2011
B 11 18/07/2010
C 45 11/09/2010
C 21 25/10/2010
D 54 05/02/2011
La Query dovrebbe restituirmi :
- A 3 25/01/2011
A 2 25/02/2011
B 11 18/07/2010
C 45 11/09/2010
Ma invece mi restituisce :
- A 1 25/03/2011
A 2 25/02/2011
A 3 25/01/2011
B 25 14/02/2011
B 11 18/07/2010
C 45 11/09/2010
C 21 25/10/2010
Qui vi riporto il codice della Query :
SELECT DISTINCT Stock.[Codice], Stock.[Seriale], Min(Stock.[Data]) AS [MinOfData]
FROM [Ordini] LEFT JOIN Stock ON [Ordini].[Codice]=Stock.[Codice]
GROUP BY Stock.[Codice], Stock.[Seriale]
ORDER BY Min(Stock.[Data]);
Grazie a tutti.