Problema con query ricorsiva su SQL SERVER 2005

sabato 09 aprile 2011 - 12.52
Tag Elenco Tags  SQL Server 2005

morisco Profilo | Newbie

Ciao a tutti ragazzi.

Parto subito con un esempio per spiegarvi cosa intendo realizzare.

Ho una tabella cosi strutturata:

Nome Istituto Conto DataInserimento IDGRP Riferimento
A B C 01/01/2010 1 XX
A B C 01/01/2010 2 XX
A B C 02/01/2010 7 XX
A B C 03/01/2010 1 XX
F G H 02/01/2010 5 XX
L M N 01/01/2010 5 XX
L M N 02/01/2010 5 XX
L M N 02/01/2010 8 XX

Vorrei realizzare qualcosa del genere:

Nome Istituto Conto DataInserimento IDGRP Riferimento
A B C 01/01/2010 1 02/01/2010
A B C 01/01/2010 2 02/01/2010
A B C 02/01/2010 7 03/01/2010
A B C 03/01/2010 1 LAST
F G H 02/01/2010 5 LAST
L M N 31/12/2009 5 01/01/2010
L M N 01/01/2010 5 02/01/2010
L M N 02/01/2010 5 02/01/2010
L M N 02/01/2010 8 LAST

In altre parole vorrei "marchiare" con un flag, in tal caso indicato con "LAST", il record piu recente con Nome, Istituo e Conto come parte in comune, facendo attenzione che nel caso in cui siano presenti due record uguali con stessa data (nell'esempio gli ultimi due record), ad essere contraddistinto con il flag "LAST" dovrebbe essere quello con IDGRP maggiore.

Tutti gli altri record invece devono essere riempiti con la data di Inserimento del record che li SUCCEDE e con DATA_INSERIMENTO PIU VICINA a quello da flaggare. Va fatta quindi attenzione a casi come il quart'ultimo record dell'esempio, che conterrà come Riferimento la data di inserimento del record con data Inserimento 01/01/2010, e non per esempio quello del 02/01/2010.

Grazie mille a tutti coloro i quali sapranno aiutarmi.
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5