我想根据一个打卡系统得出当月所有人打卡的明细表:
表名:punch_card_record
字段:user_id,user_name,record_date(打卡日期 日期类型),onduty_time(上班时间 时间类型),
offduty_time(下班时间 时间类型)
我现在完成的语句只能实现某一天的查询下:
X年X月X日
张三 √ △
李四 √ △
王五 √ △
我需要得到的表格是这样:
X年X月X日 X年X月X+1日张三 √ △ √ √
李四 √ △ √ √
王五 √ △ √ △我写的语句如下:
select distinct a.user_id,a.user_name,
((select case when to_char(b.onduty_time,'hh24:mi')<='09:00' then '√'
else to_char(b.onduty_time,'hh24:mi') end from punch_card_record b where b.user_id=a.user_id
and b.record_date = to_date('2009-03-01','yyyy-mm-dd' ))||','||
(select case when b.offduty_time is null then '×'
when to_char(b.offduty_time,'hh24:mi')>='17:20' then '√'
when to_char(b.offduty_time,'hh24:mi')<='17:20' then to_char(b.offduty_time,'hh24:mi')
end from punch_card_record b where b.user_id=a.user_id
and b.record_date = to_date('2009-03-01','yyyy-mm-dd' )) ) "1"
from punch_card_record a
表名:punch_card_record
字段:user_id,user_name,record_date(打卡日期 日期类型),onduty_time(上班时间 时间类型),
offduty_time(下班时间 时间类型)
我现在完成的语句只能实现某一天的查询下:
X年X月X日
张三 √ △
李四 √ △
王五 √ △
我需要得到的表格是这样:
X年X月X日 X年X月X+1日张三 √ △ √ √
李四 √ △ √ √
王五 √ △ √ △我写的语句如下:
select distinct a.user_id,a.user_name,
((select case when to_char(b.onduty_time,'hh24:mi')<='09:00' then '√'
else to_char(b.onduty_time,'hh24:mi') end from punch_card_record b where b.user_id=a.user_id
and b.record_date = to_date('2009-03-01','yyyy-mm-dd' ))||','||
(select case when b.offduty_time is null then '×'
when to_char(b.offduty_time,'hh24:mi')>='17:20' then '√'
when to_char(b.offduty_time,'hh24:mi')<='17:20' then to_char(b.offduty_time,'hh24:mi')
end from punch_card_record b where b.user_id=a.user_id
and b.record_date = to_date('2009-03-01','yyyy-mm-dd' )) ) "1"
from punch_card_record a
解决方案 »
- 求SQL语句两个表,求差,有重复数据
- 部分数据库备份可以在数据库关闭时进行备份 指的是数据库脱机备份吗?
- 求助:帮着写个动态sql语句
- ACCESS 数据库 的select结果集怎么处理?
- 请教高手一个关于Oracle+XML的问题!
- 哪位熟悉OracleMigrationWorkbench-ORACLE数据迁移工具的安装使用?
- 问个数据转换问题 急!!!
- clob和blob的问题请教。
- oracle8i的个人版能不能安装在win98下,能不能在98下建立数据库!有可视界面吗?
- 怎样获得表中字段的具体类型?例如VARCHAR2类型,怎么得到VARCHAR2(?)长度是多少
- 关于打印的问题
- Oracle调用C dll问题
打卡系统只纪录每个人每一天的上班下班时间
每个人每一天是一条数据。
我想统计成一个明细表 能清楚的知道,这个月每一天 所有人的打卡情况 就象上面的例子中那样。