합류와 나는 두 개의 테이블이 있습니다 1. EMPLOYEE_DATA 및SQL 그룹으로 + 집계 기능
등의 열EMP_ID MANAGER_ID
9999 2222
8888 2222
7777 2222
또 다른 테이블은 다음과 같습니다 2 EMPLOYEE_RECORDS : 내가 원하는
EMP_ID MANAGER_ID NO_OF_SWIPEINS ATTENDACE_DATE
9999 2222 1 23-DEC-2017
7777 2222 1 23-DEC-2017
9999 2222 1 23-DEC-2017
9999 2222 1 23-DEC-2017
아래 형식의 데이터 :
EMP_ID MANAGER_ID TODAY_SWIPEINS
9999 2222 3
8888 2222 0
7777 2222 1
아래 쿼리를 시도했습니다.
SELECT edata.EMP_ID, sum(rec.NO_OF_SWIPEINS) as TODAY_SWIPEINS,edata.MANAGER_ID FROM EMPLOYEE_RECORDS rec
right JOIN EMPLOYEE_DATA edata
ON edata.MANAGER_ID = rec.MANAGER_ID
and rec.MANAGER_ID='2222' and trunc(rec.ATTENDANCE_DATE)='23-DEC-2017'
group by edata.EMP_ID ,edata.MANAGER_ID;
그러나 결과입니다 점점 :
EMP_ID TODAY_SWIPEINS MANAGER_ID
8888 4 2222
7777 4 2222
9999 4 2222
누군가가 내가 잘못 뭐하는 거지 나를 인도 해주십시오.
, 날짜 컬럼과 비교를하는 동안
TO_DATE
를 사용하는 것이 바람직하다하지만 내가 표 1 – rumit당신이 할 수있는에있는 표 2에서 그 기록을 가지고 있겠지 t는 EMPLOYEE_RECORDS에 존재하지 않기 때문에 8888을 가짐 –