ciao a tutti
so che dal titolo non si capisce molto...cercherò di spiegarmi meglio

ho 2 tabelle in una alcuni oggetti
- id
- marca
- nome
- prezzo

nell'altra ho gli stati degli oggetti

- id
- oggetto
- data
- stato

vorrei fare una select che mi seleziona tutti gli oggetti di una determitata marca e con un determinato stato, fino a qui la cosa sarebbe abbastanza semplice, nel senso che basta una istruzione annidata di questo tipo (almeno credo!)

codice:
select * from magazzino where marca='$marca' and id in (select movimenti.oggetto from movimenti where movimenti.stato = '$stato')
il problema è che lo stato può variare (ed è per questo che ho fatto una tabella a parte)

in sostanza io avrei nella stessa tabella più oggetti uguali ma con stati differenti, io vorrei considerare lo stato del record che ha data massima, come faccio? è possibile ?