各位大虾好!
下面有个问题共同商讨,看看有没有更好的执行方式,谢谢!
--------------------------------
idname time
a 02:06:21
b 02:06:47
c 02:08:27
a 02:37:22
c 02:48:34
a 03:08:20若IDNAME为用户名,TIME为该用户点击页面的时间,
想得到每个用户在线的平均时长,
比如IDNAME为a的用户在线时长即为02:06:21到03:08:20的时间差;
下面有个问题共同商讨,看看有没有更好的执行方式,谢谢!
--------------------------------
idname time
a 02:06:21
b 02:06:47
c 02:08:27
a 02:37:22
c 02:48:34
a 03:08:20若IDNAME为用户名,TIME为该用户点击页面的时间,
想得到每个用户在线的平均时长,
比如IDNAME为a的用户在线时长即为02:06:21到03:08:20的时间差;
解决方案 »
- 老师说:查询选修了所有课程的学生是个经典问题。我想到了更好的解决办法。请大家看看是否可以。
- SQL 查询问题(汉字变为空)
- 100分求一个简单的SQL语句!急,先解答的得全分!
- 付费优化网站数据库
- 讲授sqlserver课程时,字段名用中文?英文?拼音?
- 求销售员管理的表结构与算法 (70分给解决者,其它给顶者)
- 请教一句合并SQL,谢谢
- 从access 把数据导入 Sqlserver后,如何验证数据的正确性?
- 求一SQL语句,一句话写完
- select distinct 怎么按照另外一列排序?!
- SQL SERVER 2000一个简单的问题:
- 主 题: ms sql可以在存储过程中用opensource来访问另一台电脑中的ms sql数据库,以达到分布式事务.
-----------------
ID名称 在线时长
a 23
b 4
c 5
(idname Varchar(10),
[time] Varchar(8))
Insert TEST Select 'a ', '02:06:21'
Union All Select 'b', '02:06:47'
Union All Select 'c', '02:08:27'
Union All Select 'a', '02:37:22'
Union All Select 'c', '02:48:34'
Union All Select 'a', '03:08:20'
GO
Select
idname,
DateDiff(ss, Min([time]), Max([time])) As 时间差
From
TEST
Group By
idname
GO
Drop Table TEST
--Result
/*
idname 时间差
a 3719
b 0
c 2407
*/
select idname as ID名称,max(time)-min(time) as 在线时长
from table1
group by idname