我想创建一个存储过程,以便使用OFFSET ROWS通过{
"AWSEBDockerrunVersion": 2,
"volumes": [
{
"name": "db-data",
"host": {
"sourcePath": "/data/db"
}
}
],
"containerDefinitions": [
{
"name": "db",
"image": "db_image_name",
"essential": true,
"memory": 128,
"environment": [
{
"name": "POSTGRES_USER",
"value": "postgres"
},
{
"name": "POSTGRES_PASSWORD",
"value": "password"
},
{
"name": "PGDATA",
"value": "/data/db/pgdata"
}
],
"portMappings": [
{
"hostPort": 5432,
"containerPort": 5432
}
],
"mountPoints": [
{
"sourceVolume": "db-data",
"containerPath": "/data/db"
}
]
},
{
"name": "app",
"image": "app_image_name",
"essential": true,
"memory": 128,
"environment": [
{
"name": "NODE_ENV",
"value": "production"
},
{
"name": "DB_HOST",
"value": "db"
},
{
"name": "DB_PORT",
"value": "5432"
},
{
"name": "DB_PASSWORD",
"value": "password"
}
],
"links": [
"db"
],
"portMappings": [
{
"hostPort": 80,
"containerPort": 3000
}
]
}
]
}
和PageIndex
来获取数据
答案 0 :(得分:1)
您可以将OFFSET
和FETCH NEXT
用于索引中的技术行数。演示在这里
CREATE PROCEDURE [dbo].[P_StudentSelectPaging]
@PageIndex INT=1,
@PageSize INT=10
AS
BEGIN
SET NOCOUNT ON;
SELECT ROW_NUMBER() OVER(ORDER BY Id DESC) AS RowNumber,[RecordCount]=COUNT(*) OVER(),
Id,Name,City
FROM (
SELECT
ISNULL(Id,0) AS Id,
ISNULL(Name,0) AS Name,
ISNULL(City,'') AS City
FROM F_Posts P
) AS tmpTable
ORDER BY ISNULL(Id,1) DESC
OFFSET @PageSize * (@PageIndex-1) ROWS
FETCH NEXT @PageSize ROWS ONLY;
END
注意:仅在高于SQL Server R2 2008的版本中支持OFFSET
。