在oracle签到表中
假设 1 是正常上班 2是迟到 3是请假 4是旷工
员工A 自上班以来的签到情况 是(按时间 desc) 222431...
现在需要统计他最近连续 迟到的次数 (请假、旷工不算迟到)
问:怎样编写 sql 才能统计出 他最近连续迟到3次?
也可以这样问 怎样编写 sql 才能统计出 他最近连续 非正常上班 次数?
在oracle当中统计连续迟到次数
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答
- bw555 2014-11-22 12:22关注
签到是怎么存储的?
姓名 日期 状态?按这个结构给你写吧
--下面语句可查出设定日期之后连续3天迟到的人员名单
--listagg 11g以后可用
select 姓名
from T
where 日期>=设定日期
GROUP BY 姓名
having regexp_like(listagg(状态,'') within group (order by 日期),'222')解决 无用评论 打赏 举报
悬赏问题
- ¥15 求差集那个函数有问题,有无佬可以解决
- ¥15 【提问】基于Invest的水源涵养
- ¥20 微信网友居然可以通过vx号找到我绑的手机号
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名
- ¥65 汇编语言除法溢出问题