Query paginata su SQL Server 2005 (Storico)

Come sempre un appunto per non dimenticarmi come si fa...

Stamattina stavo rimuginando sul come realizzare una grid paginata su console, (si, ad alcuni serve fare anche questo tipo di antiquariato purtroppo), perciò mi sono detta intanto vediamo che cosa può fare SQL Server per aiutarmi in merito quindi ho fatto un giro su Google e ho trovato una Stored procedure simpatica che usa la nuova funzione Row_Number per paginare una query.

l'ho modificata perché funzioni su pubs:

 
use pubs 
go
CREATE PROCEDURE [dbo].[TestspPaginate] 
-- Add the parameters for the stored procedure here
@start int = 0
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
Set NOCOUNT ON
SELECT TOP 20 * FROM
(
SELECT
ROW_NUMBER() OVER (ORDER BY Au_ID) AS num
,[Au_FName]
,[Au_LName]
FROM authors
) AS Au
WHERE num > @start
END

Strano pensare di usare SQL Server 2005 e un progetto console come output, però dovendolo fare mi accorgo di come la vita di un programmatore era molto meno difficile senza le finestre :oD

Tags: , ,

Print | posted on lunedì 24 marzo 2008 19.24

Feedback

No comments posted yet.

Your comment:





 
Please add 8 and 3 and type the answer here:

Copyright © Sabrina C.

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski