Ciao a tutti... Intanto spero di aver scritto nel forum giusto
Ho una tabella a struttura gerarchica a 2 livelli con dei records coi campi ID e RIF
esempio
ID: 5 RIF: 0 >> Nodo principale
ID: 12 RIF: 5 >> Nodo 'Figlio' di ID:5
Ho creato una SP per listarmi tutti nodi "padre"
codice:
ALTER PROCEDURE [dbo].[FORUM_LIST]
@RPP int, /* Records Per Page*/
@CRS int, /* Cursor */
@id int = null,
@Rep int = null
AS
IF @CRS = @RPP
BEGIN
Select top(@RPP) [id],[Titolo],[Autore],[Blogged] from Forum where Rif = 0 Order by Blogged Asc, LastPost desc
END
ELSE
BEGIN
Select top(@RPP) [id],[Titolo],[Autore],[Blogged] from Forum where Rif = 0 And NOT id IN (select top(@CRS) id from Forum where Rif = 0 Order by Blogged Asc, LastPost desc) Order by Blogged Asc, LastPost desc
END
ed un'altra per ottenere il numero di records per ogni Rif:
codice:
ALTER PROCEDURE [dbo].[FORUM_COUNT]
@RifId int
AS
Select COUNT(id) as 'TOTREC' from Forum Where Rif = @RifId
Ma ora come faccio nella prima ad avere per ogni record (Rif=0) il conteggio dei records "figli" ovvero Rif=@id?
Non sono molto pratico di Stored Procedures e questo è un po' un problema...
Uso MSSQL2005
THANX!