Join con estrazione valore MAX personalizzato

venerdì 11 dicembre 2015 - 10.55
Tag Elenco Tags  SQL Server 2008 R2

paolagumi Profilo | Junior Member

Buongiorno ho due tabelle:
la prima, FerieDipendenti:
Matricola int,
idPubblicazione int,
DataInizio date,
DataFine date.
La seconda, le publicazioni di ferie: FeriePubblicate:
idPubblicazione int,
AnnoRiferimento int,
DataOraPubblicazione date.
Succede ad esempio questa situazione:
FerieDipendenti:
Matricola IdPubblicazione DataInizio DataFine
5926 1 2015-06-06 2015-06-12
5926 1 2015-08-01 2015-08-30
5926 2 2015-07-01 2015-07-05
5926 2 2015-07-15 2015-08-12
7155 1 2015-06-01 2015-06-21
7155 1 2015-09-01 2015-09-13
7746 1 2015-06-03 2015-06-15
7746 1 2015-06-16 2015-06-28
7746 1 2015-06-30 2015-06-30
7746 1 2015-09-08 2015-09-14

PubblicazioniFerie:
IdPubblicazione Annoriferimento DataOraPubblicazione
1 2015 2015-02-16 10:30:00.000
2 2015 2015-02-25 11:00:00.000
3 2016 2016-02-18 12:00:00.000

Filtrando per AnnoRiferimento = 2015,
Per il dipendente 5926 voglio vedere SOLO questi records:
Matricola IdPubblicazione DataInizio DataFine
5926 2 2015-07-01 2015-07-05
5926 2 2015-07-15 2015-08-12

invece per il dipendente 7155 voglio vedere:
Matricola IdPubblicazione DataInizio DataFine
7155 1 2015-06-01 2015-06-21

In pratica, per ogni dipendente voglio vedere i suoi periodi di ferie dell'AnnoRiferimento=2015 che hanno la data di pubblicazione massima.
Ho provato in tanti modi, fra select, max.....
ma non ci riesco.
qualcuno mi può aiutare?
ciao e grazie,
Paola
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5