| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 780 人关注过本帖
标题:[求助]SQL语句排序问题(已解决)
只看楼主 加入收藏
做人很低调
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1268
专家分:0
注 册:2006-8-2
收藏
 问题点数:0 回复次数:6 
[求助]SQL语句排序问题(已解决)
本人要实现一个这样的效果
想了好久 还是不行 请大家帮偶看看

表A中有N条记录
有一个字段 是日期类型的 (不是默认当前时间,是用户输入的)

我想这样做
先把大于等于当前时间的记录升序排列
然后再把小于当前时间的记录降序排列
要如何写这个语句.....

例:
A表中有pubtime字段

2007-1-20
2006-11-22
2006-12-30
2006-12-10
2006-12-20
2007-2-15

今天日期2006-12-26
想要的结果为:

2006-12-30
2007-1-20
2007-2-15
--------以上是升序 以下是降序
2006-12-20
2006-12-10

这样要怎么写SQL语句 请大家指点 先谢谢了

[此贴子已经被作者于2006-12-26 11:37:51编辑过]

搜索更多相关主题的帖子: SQL 语句 字段 记录 
2006-12-26 09:35
wsn
Rank: 2
等 级:新手上路
威 望:5
帖 子:321
专家分:0
注 册:2006-2-9
收藏
得分:0 
用一个unio就行了

select * from a where pubtime>getdate() order by puttime
unio
select * from a where pubtime<=getdate() order by puttime desc

已婚男人!没事请勿打扰·老婆格言:①不准對她耍酷 ②不准讓她吃醋 ③吵架我要讓步 ④揍我我要挺住⊙⊙
2006-12-26 09:54
做人很低调
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1268
专家分:0
注 册:2006-8-2
收藏
得分:0 

2楼朋友你说的是 union 吧

我试过了 不行的

select * from A where pubtime>='2006-12-26' order by pubtime asc

select * from A where pubtime<'2006-12-26' order by pubtime desc

现在的问题就是怎么样把上边的2条SQL语句联合起来查

用union的话 会报错的 郁闷


其实我很低调,只是你不知道...
2006-12-26 10:02
chenxkfox
Rank: 1
等 级:新手上路
威 望:1
帖 子:123
专家分:0
注 册:2005-8-18
收藏
得分:0 

用union是不行的,你可以创建一个虚拟表
把升序查出来的数据插入到虚拟表里
再把降序查出来的数据插入到虚拟表里
然后再从虚拟表里把需要的数据查出来


,SQL SERVER 群号:17280478
2006-12-26 11:23
做人很低调
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1268
专家分:0
注 册:2006-8-2
收藏
得分:0 
感谢大家
我最后还是把表多加了一个字段解决的这个问题哎
我看应该好好学学SQL了.....

其实我很低调,只是你不知道...
2006-12-26 11:37
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 

drop table #A
create table #A(pubtime datetime)
insert into #A select '2007-1-20'
union select '2006-11-22'
union select '2006-12-30'
union select '2006-12-10'
union select '2006-12-20'
union select '2007-2-15'

select convert(varchar(10),k,120) as pubtime from (select top 6 pubtime as k,sign(datediff(dd,getdate(),pubtime)) as m,abs(datediff(dd,getdate(),pubtime)) as n
from #A order by m desc,n asc) aa


pubtime
----------
2006-12-30
2007-01-20
2007-02-15
2006-12-20
2006-12-10
2006-11-22

(所影响的行数为 6 行)


26403021 sql群 博客 blog./user15/81152/index.shtml
2006-12-26 13:04
做人很低调
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1268
专家分:0
注 册:2006-8-2
收藏
得分:0 
谢谢 楼上的帅哥

SQL语句好复杂哦 强悍....

再次感谢大家 十分感谢

有时间向大家请教

其实我很低调,只是你不知道...
2006-12-26 17:35
快速回复:[求助]SQL语句排序问题(已解决)
数据加载中...
 
   



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

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