如何使用顶部选择行来定义一个范围,例如介于40,000-45000之间?

时间:2019-05-23 16:45:46

标签: sql select range row

SELECT TOP (1000) [DBName]
      ,[TableName]
      ,[Reportdate]
      ,[ActionID]
      ,[Records]
      ,[DateCreated]
  FROM [PXYZ_database].[dbo].[SystemData]

因此,从上面的上述查询中,我想使其选择44000和45000的行范围。我试图以这种方式编写查询,但是到目前为止,它非常复杂。

SELECT * FROM table limit 100 [DBName]
      ,[TableName]
      ,[Reportdate]
      ,[ActionID]
      ,[Records]
      ,[DateCreated]

  FROM [PXYZ_database].[dbo].[SystemData]

但是我收到错误消息,语法错误吗?

1 个答案:

答案 0 :(得分:0)

您可以将order by子句与offset选项一起使用:

  SELECT [DBName]
        ,[TableName]
        ,[Reportdate]
        ,[ActionID]
        ,[Records]
        ,[DateCreated]
    FROM [PXYZ_database].[dbo].[SystemData]
ORDER BY [DBName] OFFSET 44000  ROWS FETCH NEXT 1000 ROWS ONLY