标题:[求助]这样的SQL语句怎么写?
只看楼主
天天做梦
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-12-21
 问题点数:0 回复次数:11 
[求助]这样的SQL语句怎么写?
假设我现在有一个表A
ID字段 从1到10

现在我想前5条记录降序 后5条记录升序

象这样
5
4
3
2
1
6
7
8
9
10
不知道这样的SQL语句如何写 请大家帮帮忙
搜索更多相关主题的帖子: SQL 语句 
2006-12-21 09:16
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
得分:0 

好象得借助一张临时表


26403021 sql群 博客 blog./user15/81152/index.shtml
2006-12-21 10:28
chenxkfox
Rank: 1
等 级:新手上路
威 望:1
帖 子:123
专家分:0
注 册:2005-8-18
得分:0 
很有意思,试了一下,没有成功,不好意思!

,SQL SERVER 群号:17280478
2006-12-21 10:34
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
得分:0 
联合查询,用..top 5..和..not in (...top 5...)...

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2006-12-21 10:45
chenxkfox
Rank: 1
等 级:新手上路
威 望:1
帖 子:123
专家分:0
注 册:2005-8-18
得分:0 
以下是引用angeloc在2006-12-21 10:45:06的发言:
联合查询,用..top 5..和..not in (...top 5...)...

这样是可以查出来,但是排序好像对吧


你再看看帖子的要求

,SQL SERVER 群号:17280478
2006-12-21 11:20
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
得分:0 
先是查出TOP 5按降序排列
联合
查出全部 not in (查出top 5)升序排列。
你试试

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2006-12-21 11:45
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
得分:0 
select a.id from ( select top 10 id,sign(id-6) as k ,abs(id-6) as m from shuzi
order by sign(id-6),abs(id-6) ) a

26403021 sql群 博客 blog./user15/81152/index.shtml
2006-12-21 11:59
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
要是写C就好了

许多函数都不会.上面的是什么意思啊,解释下.谢了.

倚天照海花无数,流水高山心自知。
2006-12-21 23:38
xu2000
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:51
帖 子:3890
专家分:56
注 册:2006-4-8
得分:0 
not in top 能用吗?
select top 5 a from tablename
order by a
union
select top 5 from tablename
order by a desc
这样写不行吗?

我会拿出我全部的钱财,以保你衣食无忧。我会献出我所有的智慧,以助你一帆风顺。我会想到所有的笑语,以令你展眉开颜。我会挤出最长的时间,以使你终生幸福。        [本人原创的结婚宣言]
2006-12-21 23:58
chenxkfox
Rank: 1
等 级:新手上路
威 望:1
帖 子:123
专家分:0
注 册:2005-8-18
得分:0 
以下是引用xu2000在2006-12-21 23:58:58的发言:
not in top 能用吗?
select top 5 a from tablename
order by a
union
select top 5 from tablename
order by a desc
这样写不行吗?

不可以的,
如果使用 UNION 运算符,那么单独的 SELECT 语句不能包含其自己的 ORDER BY 或 COMPUTE 子句。只能在最后一个 SELECT 语句的后面使用一个 ORDER BY 或 COMPUTE 子句;该子句适用于最终的组合结果集。GROUP BY 和 HAVING 子句只能在单独的 SELECT 语句中指定。


,SQL SERVER 群号:17280478
2006-12-22 09:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-110983-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.142559 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved