Select  a.人員姓名,b.日期,insnull(b.打卡次數,0) as 打卡次數 from
人員表 a left join
(select 人員姓名,convert(char(10),打卡時間,120), count(*) as 打卡次數 from 打卡记录表 group by  人員姓名,convert(char(10),打卡時間,120)) b
on a.人員姓名=b.人員姓名

解决方案 »

  1.   


    Select  a.人員姓名,b.日期,insnull(b.打卡次數,0) as 打卡次數 from
    人員表 a left join
    (select 人員姓名,convert(char(10) as 日期,打卡時間,120), count(*) as 打卡次數 from 打卡记录表 group by  人員姓名,convert(char(10),打卡時間,120)) b
    on a.人員姓名=b.人員姓名
     忘記吧打卡時間加上別名了.
      

  2.   

    从结构上设计去处理考勤,当然不是一个SQL去处理,情况千变万变的
      

  3.   

    成功,谢谢大家的帮助,尤其ks_reny朋友