有一张登陆信息表
登陆信息表(logininfo)
id int,
logindate date,
userid varcher(20)
怎么查询某一个时间段内(比如2013-06-08到2013-07-08),每天至少登陆一次的userid?
Oracle 数据库查询登陆信息
答案:2 悬赏:0 手机版
解决时间 2021-02-06 21:23
- 提问者网友:世勋超人
- 2021-02-06 07:15
最佳答案
- 五星知识达人网友:过活
- 2021-02-06 08:30
楼上的查出来的应该是时间段内至少登陆过一次的吧?应该不是时间段内每天至少登陆过一次的,应该是让统计出来的次数和时间段内的天数是相等的。
SELECt USERID,COUNT(1)
FROM LOGIN_MESSAGE WHERe
LOGINDATE
BETWEEN TO_DATE( '2013-06-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND TO_DATE( '2013-06-04 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
GROUP BY USERID HAVINg COUNT(1)=(TO_DATE( '2013-06-04', 'YYYY-MM-DD')-TO_DATE( '2013-06-01', 'YYYY-MM-DD'))+1;
上边这个也是不对的,应该统计的是去重后的logindate,下班这个应该没有问题
SELECt USERID,COUNT(DISTINCT(LOGINDATE))
FROM LOGIN_MESSAGE WHERe
LOGINDATE
BETWEEN TO_DATE( '2013-06-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND TO_DATE( '2013-06-04 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
GROUP BY USERID HAVINg COUNT(DISTINCT(LOGINDATE))=TO_DATE( '2013-06-04', 'YYYY-MM-DD')-TO_DATE( '2013-06-01', 'YYYY-MM-DD')+1;
SELECt USERID,COUNT(1)
FROM LOGIN_MESSAGE WHERe
LOGINDATE
BETWEEN TO_DATE( '2013-06-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND TO_DATE( '2013-06-04 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
GROUP BY USERID HAVINg COUNT(1)=(TO_DATE( '2013-06-04', 'YYYY-MM-DD')-TO_DATE( '2013-06-01', 'YYYY-MM-DD'))+1;
上边这个也是不对的,应该统计的是去重后的logindate,下班这个应该没有问题
SELECt USERID,COUNT(DISTINCT(LOGINDATE))
FROM LOGIN_MESSAGE WHERe
LOGINDATE
BETWEEN TO_DATE( '2013-06-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND TO_DATE( '2013-06-04 23:59:59', 'YYYY-MM-DD HH24:MI:SS')
GROUP BY USERID HAVINg COUNT(DISTINCT(LOGINDATE))=TO_DATE( '2013-06-04', 'YYYY-MM-DD')-TO_DATE( '2013-06-01', 'YYYY-MM-DD')+1;
全部回答
- 1楼网友:北方的南先生
- 2021-02-06 09:44
查看一下数据库现有的进程数,是否已经达到参数processes的大小。
1.select count(*) from v$process; 取得数据库目前的进程数。
2.select value from v$parameter where name = 'processes'; 取得进程数的上限。
3.如已达到上限,修改initsid.ora中的processes的大小。
4.重新启动数据库到nomount状态下,执行create spfile from pfile; 并startup open。
查询数据库自启动以来最大的并发数量
修改最大连接数:
alter system set processes = 300 scope = spfile;
重启数据库:
shutdown immediate;
startup;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯