标题:弱问一下~T-SQL问题
只看楼主
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
 问题点数:0 回复次数:13 
弱问一下~T-SQL问题

有一个叫BBS的数据库,record表结构为
列名 数据类型 长度 允许空
3 ID numeric 9 0 --primary key
0 CardID varchar 10 0 --foreign key
0 ComputerID varchar 10 1 --foreign key
0 BeginTime datetime 8 1
0 EndTime datetime 8 1
0 Fee numeric 9 1

编写一个T-SQL,查询一下本月上机最长的三个用户的卡号

搜索更多相关主题的帖子: 数据库 primary foreign record 
2006-10-28 10:05
小水滴
Rank: 1
等 级:新手上路
威 望:2
帖 子:227
专家分:0
注 册:2006-8-22
得分:0 
select top 3 cardID
from record
where datediff(mm,begintime,getdate())=0
order by datediff(ms,begintime,endtime) desc

[此贴子已经被作者于2006-10-28 10:48:33编辑过]


2006-10-28 10:41
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
得分:0 
以下是引用honkerman在2006-10-28 10:05:26的发言:

有一个叫BBS的数据库,record表结构为
列名 数据类型 长度 允许空
3 ID numeric 9 0 --primary key
0 CardID varchar 10 0 --foreign key
0 ComputerID varchar 10 1 --foreign key
0 BeginTime datetime 8 1 --这个是当天的上机时间
0 EndTime datetime 8 1 --这个是当天的下机时间
0 Fee numeric 9 1

编写一个T-SQL,查询一下本月上机最长的三个用户的卡号


" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-28 10:54
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
得分:0 
水滴MM,我运行不出来啊~~

" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-28 10:55
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
得分:0 
要把从今天止前一个月内的用户上机时间都算上~~然后排出前3个~~

" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-28 10:57
小水滴
Rank: 1
等 级:新手上路
威 望:2
帖 子:227
专家分:0
注 册:2006-8-22
得分:0 

我测试过的,可以的,是本月的,不包括上月的.


2006-10-28 11:36
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
得分:0 

谢谢了,偶再看看


" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-28 11:44
honkerman
Rank: 2
等 级:新手上路
威 望:4
帖 子:3078
专家分:0
注 册:2006-8-25
得分:0 
你是对的,呵呵,不好意思,我查询的数据不对,所以查不到~~

" target="_blank">God Bless You[GLOW=255,#00ff00,2]My Friends![/GLOW]
2006-10-28 11:51
小水滴
Rank: 1
等 级:新手上路
威 望:2
帖 子:227
专家分:0
注 册:2006-8-22
得分:0 
相互学习

2006-10-28 12:18
wohemachen
Rank: 1
等 级:新手上路
威 望:2
帖 子:641
专家分:0
注 册:2006-9-21
得分:0 
以下是引用小水滴在2006-10-28 10:41:48的发言:
select top 3 cardID
from record
where datediff(mm,begintime,getdate())=0
order by datediff(ms,begintime,endtime) desc

正解~


[glow=255,red,2]桃花坞里桃花庵,桃花庵里桃花仙;桃花仙人种桃树,又摘桃花换酒钱。[/glow]
2006-10-30 11:06



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




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

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