一个小问题

tieyi 2003-08-20 05:19:58
查询一个表里的最后10项怎么写
...全文
30 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-08-20
  • 打赏
  • 举报
回复
select top 10 * from 表 order by 主键 desc

分页:

select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp where ID_Num between 10 and 20

或:

declare @SQLStr varchar(8000)
set @SQLStr='SELECT Top '+cast(@每页大小 as varchar)+' * FROM 表 WHERE 主键列 NOT IN (SELECT TOP '+cast(@每页大小*@第几页 as varchar)+' 主键列 from 表 )'
exec(@SQLStr)
pengdali 2003-08-20
  • 打赏
  • 举报
回复
select top 10 * from 表 order by 主键 desc

分页:

select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp where ID_Num between 10 and 20

或:

declare @SQLStr varchar(8000)
set @SQLStr='SELECT Top '+cast(@每页大小 as varchar)+' * FROM 表 WHERE 主键列 NOT IN (SELECT TOP '+cast(@每页大小*@第几页 as varchar)+' 主键列 from 表 )'
exec(@SQLStr)
flying120 2003-08-20
  • 打赏
  • 举报
回复
up
tieyi 2003-08-20
  • 打赏
  • 举报
回复
但如我的表不按一定的顺序排列,我要的只是那最后的十条记录呢
caiyunxia 2003-08-20
  • 打赏
  • 举报
回复
select top 10 * from yourtable order by pk desc
dafu71 2003-08-20
  • 打赏
  • 举报
回复
select top 10 * from yourtable order by id desc

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧