表中有一个字段checktime(签到时间/签退时间),还有一个字段checktype(类别),如何根据checktype(类别)分别查询出签到时间和签退时间?

解决方案 »

  1.   

    select checktype,min(checktime) 签到,max(checktime) 签退
    from tb
    group by checktype
    估计没这么简单,可楼主又不肯提供数据,只能这样了。
      

  2.   

    用一条语句是没法完成的
    因为,这样的话,一行中,既有签到,也有签退只能把这些都返回给程序,让程序去根据checktype来判断是到还是退
      

  3.   

    select 
    case when checktype = '签到' then checktime else null end [签到],
    case when checktype = '签到' then checktime else null end [签退]
    from tb
    group by name