WXDao_getTodayWork4PushMsg.sql 976 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. SELECT NAME,
  2. openid,
  3. userid,
  4. sum( notexectasknum ) notexectasknum,
  5. sum( outtimetasknum ) outtimetasknum
  6. FROM
  7. (
  8. SELECT USER
  9. .realname NAME,
  10. suser.openid,
  11. suser.id userid,
  12. CASE
  13. taskstatus
  14. WHEN '0' THEN
  15. 1
  16. WHEN '1' THEN
  17. 1 ELSE 0
  18. END notexectasknum,
  19. 0 outtimetasknum
  20. FROM
  21. p_projecttask task
  22. LEFT JOIN t_s_base_user USER ON USER.id = task.
  23. OWNER LEFT JOIN t_s_user suser ON task.OWNER = suser.id
  24. WHERE
  25. 1 = 1
  26. AND LEFT ( task.planendtime, 10 ) >= :today AND LEFT(task.msgtime ,10) <= :today
  27. UNION ALL
  28. SELECT USER
  29. .realname NAME,
  30. suser.openid,
  31. suser.id userid,
  32. 0 notexectasknum,
  33. CASE
  34. WHEN LEFT ( planendtime, 10 ) < :today
  35. AND ( taskstatus = '0' OR taskstatus = '1' ) THEN
  36. 1 ELSE 0
  37. END outtimetasknum
  38. FROM
  39. p_projecttask task
  40. LEFT JOIN t_s_base_user USER ON USER.id = task.
  41. OWNER LEFT JOIN t_s_user suser ON task.OWNER = suser.id
  42. WHERE
  43. 1 = 1
  44. AND LEFT ( task.planendtime, 10 ) < :today
  45. ) temp
  46. GROUP BY
  47. openid,userid