sql2008怎样获取指定行的数据?谢谢
我只想获取曹操到拉登的数据,就是表的后8行数据,语句该怎样实现呢?谢谢了不用id排序,实际表内,id很乱,我是按name排序的,然后取后面的8行数据,我想先生成个虚拟列,...
我只想获取曹操到拉登的数据,就是表的后8行数据,语句该怎样实现呢?谢谢了
不用id排序,实际表内,id很乱,我是按name排序的,然后取后面的8行数据,我想先生成个虚拟列,自动增长,可对SQL语句不很清楚
select identity(int,1,1) as vid,name into #c from stu where city ='sz' order by name asc
以名称顺序插入临时表
go
select * from #c where vid >15 and vid <30 order by vid asc
然后从临时表中搜数据
go
drop table #c
最后删除临时表,自己折腾了半天,这样虽然可以实现,可太麻烦了,况且合并为1行后一直提示GO附近有语法错误。。拜托各位赐教~~ 展开
不用id排序,实际表内,id很乱,我是按name排序的,然后取后面的8行数据,我想先生成个虚拟列,自动增长,可对SQL语句不很清楚
select identity(int,1,1) as vid,name into #c from stu where city ='sz' order by name asc
以名称顺序插入临时表
go
select * from #c where vid >15 and vid <30 order by vid asc
然后从临时表中搜数据
go
drop table #c
最后删除临时表,自己折腾了半天,这样虽然可以实现,可太麻烦了,况且合并为1行后一直提示GO附近有语法错误。。拜托各位赐教~~ 展开
1个回答
2013-06-02
展开全部
方法1:
SELECT * FROM 表 WHERE id >= 8 AND id <= 15
方法2:
SELECT TOP 8 * FROM 表 ORDER BY id DESC
SELECT * FROM 表 WHERE id >= 8 AND id <= 15
方法2:
SELECT TOP 8 * FROM 表 ORDER BY id DESC
更多追问追答
追问
不用id排序,用第2列排序,我的问题提的不是很清楚,实际表内,id很乱,我是按name排序的,然后取后面的8行数据,我想先生成个虚拟列,自动增长,可对SQL语句不很清楚,谢谢,麻烦您再给支支招。
追答
SELECT
ROW_NUMBER() OVER( ORDER BY (SELECT 1)) AS [虚拟列],
name
FROM
表
你先这么执行看看, 是不是你要的效果?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询