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附近有语法错误。。拜托各位赐教~~
展开
 我来答
匿名用户
2013-06-02
展开全部
方法1:
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


你先这么执行看看, 是不是你要的效果?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式