sql server 查询同一时刻中的多笔数据中的最大值问题。

我现在有一个DB在不断接收数据,比如11:15:41这一秒钟出现了6笔数据123532123521352我想取出其中最大的数据所对应的行。请问如何才能实现。时间是不断的增... 我现在有一个DB在不断接收数据,比如11:15:41 这一秒钟出现了6笔数据 123 53 2 123 5213 52 我想取出其中最大的数据所对应的行。请问如何才能实现。
时间是不断的增加,每一秒钟的数据量也是不同,有可能6笔,也有可能10笔 或者1笔数据 等等,请指教!最终结果肯定是
11:15:41 5213
11:15:42 xxxx
11:15:43 xxxx

以此类推
看来我还是没有说清楚.

这个数据每天有10个小时在收集,所以我不可能把时间拿出来比较 = 11:15:41 这样的去求各个时间的max,我需要做一个统计出来的结果是 每个秒钟的时间点对应获得一个数字。
展开
 我来答
COUNTIFABS
2013-07-01 · TA获得超过2154个赞
知道大有可为答主
回答量:1594
采纳率:55%
帮助的人:1236万
展开全部
假设表结构为:
 字段1     字段2    
 11:15:41     5213    
 11:15:42     1    
 11:15:43     2    
 11:15:41     1    
 11:15:41     2    

select 字段1,MAX(字段2) from TB_1
WHERE 字段1=11:15:41
group by 字段1

结果:5213

是否是你想要的结果?

追问
1个小时会有3600秒,我总不能每个都写成字段1 = 11:15:41 这样吧,感谢赐教。不过,还不是我想要的。
追答
--第1步:导表进去;导后结构为:
1899-12-30 11:15:41.0005213
1899-12-30 11:15:41.00011
1899-12-30 12:15:42.00023
1899-12-30 13:15:42.000123
1899-12-30 14:15:43.0001
--第2步:给表中所有表加row号,新加一个表TB2
select 字段1,字段2,ROW_NUMBER() over(order by 字段2) as rownumber 
into tb2
from TB1
--第3步:查TB1,求最大值;
select 字段1,MAX(字段2)  as 字段2
into tb3
from TB1
group by 字段1
--第4步:tb3与TB2合并,求最得行号:
select b.*,a.rownumber from tb2 a,tb3 b
where a.字段1=b.字段1 and a.字段2=b.字段2
--结果
1899-12-30 14:15:43.00011
1899-12-30 12:15:42.000233
1899-12-30 13:15:42.0001234
1899-12-30 11:15:41.00052135


我思路也有点搞乱了,为了清楚点我就笨办法 一步一步做的。这样思路清楚点,中间有些步骤应该可以合并为一句!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
badkano
2013-07-01 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885371
团长

向TA提问 私信TA
展开全部

表就不建了,按照楼上的表来吧

select 字段1,max(字段2) from 表名 group by 字段1

也不需要指定字段1等于多少呀

更多追问追答
追问

为什么我使用同样的代码写出来的好像没有max的效果,而是全部都打出来了。

如图所示!

追答
你把instrumentid去掉
包括前边的select时的和后边group by 时的
否则会按时间和instrumentid的组合分组的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式