sql 假如一个表有ID,Name两个字段,id为自增,但不连续,要查询第10到20行里Name值不重复数据

sql语句怎么写... sql语句怎么写 展开
 我来答
传奇勇者
2012-02-21 · TA获得超过747个赞
知道大有可为答主
回答量:1706
采纳率:75%
帮助的人:807万
展开全部
既然用了数据库,就要转变思路,学会数据库的逻辑。
虽然在物理存储的概念上来说是一行一行的,但逻辑上数据库中是没有行的概念的,所以说这个问从设计之初就有问题。
如果数据库结构已经确定了的话,用一句sql实现不了,可以用存储过程来实现,先按id排序,取出20行,再反过来取后面10个就可以了。
追问
取出10-20我会,怎么筛选出这个范围内不重复的呢
追答
distinct,用这个修饰词只能取一列数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b37ba8c
2012-02-21 · TA获得超过334个赞
知道小有建树答主
回答量:457
采纳率:0%
帮助的人:222万
展开全部
用一个语句,有点麻烦:
select b.id,b.name from (select rownum() rn,id,name from table_name a ) b
where b.rn >=10 and b.rn <=20 and not exists(
select null from (select rownum() rn,id,name from table_name c ) d where d.rn >=10 and d.rn <=20 and d.name = b.name and d.id <> b.id)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
november14
2012-02-21
知道答主
回答量:39
采纳率:100%
帮助的人:15.1万
展开全部
select distinct name from 表
where id not in (select top 10 id from 表)
and id in (select top 30 id from 表)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大笨熊
2012-02-21 · 心有多大,就能飞得有多高,飞得有多高!
大笨熊
采纳数:92 获赞数:173

向TA提问 私信TA
展开全部
46546
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式