1. 程式人生 > >(轉)獲取資料庫中前N條記錄

(轉)獲取資料庫中前N條記錄

假如我們要寫一個儲存過程,取表中前N條記錄,其中N為引數,以Northwind庫中的Orders表為例,有兩種方法:

第一種是拼SQL

CREATE PROCEDURE GetTopNOrders
(
 @RowsToReturn int
)
AS
declare @sql varchar(8000)

set @sql='select top '+cast(@RowsToReturn as varchar)+' * from orders'

exec (@sql)

第二種是借用RowCount屬性

CREATE PROCEDURE GetTopNOrders
(
 @RowsToReturn int
)
AS
SET ROWCOUNT @RowsToReturn
SELECT * FROM Orders order by orderid

對於這個例子不管哪種效果都是一樣的,但是第二種應該更靈活一點,只是知道的人比較少罷了!

GetTopNOrders 20