Sql Server 分页查询

àì夳堔傛蜴生んèń 2022-08-09 06:45 332阅读 0赞

最近在写SQL Server 的分页查询,数据库里的test表就只有id 和name两个字段。如图:

Center

![Image 1][]

想法很简单,假如要选择3到4两条记录,那么先选择前4条记录,再将其倒排,再选择前两条,再将其正排,就是最终结果。

有一点,SQL 语句是先进行order by 再选择top n。

  1. SELECT *
  2. FROM
  3. ( SELECT TOP 2 *
  4. FROM
  5. (
  6. SELECT TOP 2 *
  7. FROM test
  8. ORDER BY ID ASC
  9. )
  10. f ORDER BY id DESC)
  11. s ORDER BY s.ID
  12. /*分析重点*/
  13. SELECT *
  14. FROM
  15. ( SELECT TOP 2 *
  16. FROM
  17. (
  18. SELECT TOP 4 *
  19. FROM test
  20. ORDER BY ID ASC
  21. )
  22. f ORDER BY id DESC)
  23. s ORDER BY s.ID
  24. /*
  25. 先选择前4个正序,然后让其倒序,再选择前2条,这时是倒序的,还要再正序
  26. */
  27. SELECT *
  28. FROM
  29. ( SELECT TOP 2 *
  30. FROM
  31. (
  32. SELECT TOP 6 *
  33. FROM test
  34. ORDER BY ID ASC
  35. )
  36. f ORDER BY id DESC)
  37. s ORDER BY s.ID
  38. SELECT *
  39. FROM
  40. ( SELECT TOP 6 *
  41. FROM
  42. (
  43. SELECT TOP 6 *
  44. FROM test
  45. ORDER BY ID ASC
  46. )
  47. f ORDER BY id DESC)
  48. s ORDER BY s.ID

[Image 1]:

发表评论

表情:
评论列表 (有 0 条评论,332人围观)

还没有评论,来说两句吧...

相关阅读

    相关 sql查询

    文章目录 分页查询 oracle中分页查询 mysql中分页查询 分页查询 > 分页查询在绝大多数项目中都会用到。如