语句怎么写?是两个列的,一个是登陆时间,一个是登出时间。
sql怎么求一段时间的值?
答案:5 悬赏:0 手机版
解决时间 2021-04-15 20:15
- 提问者网友:沉默菋噵
- 2021-04-15 14:50
最佳答案
- 五星知识达人网友:春色三分
- 2021-04-15 15:55
declare @t datetime
set @t= (select LoginTime from log where LogId = 1)
declare @q datetime
set @q= (select LogoutTime from log where LogId = 1)
select convert(varchar(04),datediff(day,@t,@q))+'日'+convert(varchar(04),datediff(hour,@t,@q)%24)+'小時'+convert(varchar(04),datediff(minute,@t,@q)%60)+'分鐘'
set @t= (select LoginTime from log where LogId = 1)
declare @q datetime
set @q= (select LogoutTime from log where LogId = 1)
select convert(varchar(04),datediff(day,@t,@q))+'日'+convert(varchar(04),datediff(hour,@t,@q)%24)+'小時'+convert(varchar(04),datediff(minute,@t,@q)%60)+'分鐘'
全部回答
- 1楼网友:行路难
- 2021-04-15 18:53
这个表设计的不太合理。
先问你一下,每个操作为一条记录,每条记录的logintime是怎么记录的,logoutTime怎么记录的?
我假设你是每做一次操作都把logintime写一次,在登出的时候再把logoutTime记录下来。。。
凭对你的表的设计的猜测写出下面的语句:
select userid,operation
from log
group by userid,logintime
- 2楼网友:拾荒鲤
- 2021-04-15 18:37
那用datediff(minute,开始时间,结束时间)这样就可以得到两者的相差多少分
- 3楼网友:一叶十三刺
- 2021-04-15 17:41
查询的条件发一下
- 4楼网友:由着我着迷
- 2021-04-15 17:05
可以分两次记录时间
用getdatetime即可!你试试吧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯