请选择 进入手机版 | 继续访问电脑版

登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 1039|回复: 0

[js,sql,html教程] 【SQL教程】sql Sever 创建分页储存过程及直接查询

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-6-30 23:12:25 来自手机 | 显示全部楼层 |阅读模式 来自:

  1. ( P8 _# x! Y1 S$ F2 i( r/ H: l
  2. --创建存储过程
    - D" S. v# s7 X; x4 m
  3. if exists(select * from sysobjects where name='P_GetStudentInfoPage')
    - U! J, ?& C, a5 f' Y& o. b! R
  4. drop proc P_GetStudentInfoPage6 Q( E  p* Z7 \1 E# y* x% |
  5. go9 t1 H  a1 T  e/ R
  6. create proc [dbo].P_GetStudentInfoPage
    % m$ y- J$ d% J- S2 @: W! C1 Q! b
  7. (
    ) g7 H( N  }, K9 T: \
  8.         @pageIndex int=1,--页号
    % z2 O. o, j) v0 ~+ v0 U  ~9 _
  9.         @pageSize int=10--每页数据条数/ d  G2 W: F% Y$ U9 a. W5 n/ W
  10. )
    ' G( K2 v( ?% v& o
  11. as
    ) V/ M5 J8 r- }7 ]' k; Z0 }
  12.         --select count(*) from StudentInfo  --查询数据总数
    ) ]9 C7 c2 q& }1 ^" s9 e: M0 D
  13. ; y; @- |) h. q+ a$ @1 J: n8 C
  14.         select * from
    4 R% C) o  U* n, C  I5 i
  15.                 (select ROW_NUMBER() over(order by StudentNo) as rowNum,* from StudentInfo) as tbl
    2 j6 u1 K9 R" c  {+ Y6 h
  16.                 where tbl.rowNum between ((@pageIndex - 1)* @pageSize + 1) and (@pageIndex*@pageSize)
    7 u: r9 t& \$ X5 }9 e

  17. * Y/ X0 V  V6 z. S- A
  18. GO* a6 ~3 W; k7 z' O0 {
  19. , M1 B" Y+ e9 H5 d3 c; j; e+ F
  20. --调用
      ]7 D1 d1 L' F% \0 j% m
  21. 7 p+ d) u' Q  R( o6 c6 M
  22. EXEC P_GetStudentInfoPage 1,10, C+ I4 J" c  u  A

  23. + R9 ]" n$ S  ?( y7 b1 D
  24. EXEC P_GetStudentInfoPage 2,105 Q! Q# ~1 R* ?( ]
  25. $ Q% h2 R% i( Z
  26. --------------------------------------直接查询代码
    4 s& s: h8 m" H  F) t
  27. select * from StudentInfo where id>=1 and id<=10
    ) [. I2 Y  V; O3 ^
  28. select * from StudentInfo where id>=10 and id<=20
    4 k  V: Y1 p# v/ J
  29. % \! D: i1 H2 N( N9 i4 u) ~, g
  30. select * from StudentInfo where id between (1-1)*10+1 and 10 *11 T* _0 U" b9 S5 m; r
  31. select * from StudentInfo where id between (2-1)*10+1 and 10 *25 d- a0 R2 J( U  |& e
  32. 6 W) l. I* r5 @
  33. select (1-1)*10+1 --13 ]4 u. n5 b/ t$ W3 Z
  34. select (2-1)*10+1 --11! K* B! O0 J. _1 v4 s
  35. select (3-1)*10+1 --21; C  ?' j# B8 R! l, b1 ^

  36. 4 T6 L& E% F5 L" ]; b2 c0 y* p
  37. select * from StudentInfo where id between 11 and 20; S* K; [$ g6 I! V, p4 @3 {6 m

  38. # e/ }) H! k; C" K! u9 Y0 l
  39. select * from8 T5 F( t  i6 y* k
  40. (select ROW_NUMBER() over(order by StudentNo desc) newRows,* from StudentInfo) t4 Q% j) u+ a' |( }8 J* \" o
  41. where t.newRows between (1-1)*10+1 and 10 *1
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区 |网站地图

GMT+8, 2024-3-28 20:13 , Processed in 0.047807 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表