>source

직원 테이블 하나와 티켓 테이블 하나가 있습니다. 티켓 표에서 코드를 작성한 사람의 ID와 빌드를 검증 한 사람의 ID를 볼 수 있습니다. 그리고 나는 직원 테이블을 사용하여 사람의 이름을 얻을 수 있습니다. 이제 빌더 또는 유효성 검사기가 특정 개인과 동일한 특정 시간 프레임에 대해 고유 한 티켓 수를 얻고 싶습니다. 다음 그림은 직원 테이블의 일부를 보여줍니다.

또한 내가 작성한 코드는 다음과 같습니다.

select distinct(t1.ticketid),
  t1.BuilderAnalystID,
  t1.VALIDAnalystID,
  t2.EMPFullName
from Ticket as t1
inner join employee as t2 on t1.BuilderAnalystID=t2.EmployeeID 
where  (t1.builderanalystid=7 or t1.VALIDAnalystID=7) and
StatusID <>12 and
cast(BuildCMPLTDT as date)>= '2017-09-01'
and cast(BuildCMPLTDT as date)< '2018-04-01'

하지만 빌더의 전체 이름 만 볼 수있었습니다. 유효성 검사기 또는 빌더가 다른 사람인데도 유효성 검사기의 전체 이름을 볼 수 있습니다.

  • 답변 # 1

    이것을 시도해라 :

    select distinct(t1.ticketid),
      t1.BuilderAnalystID,
      t1.VALIDAnalystID,
      t2.EMPFullName,
      t3.EMPFullName As Validator
    from Ticket as t1
    inner join employee as t2 on t1.BuilderAnalystID=t2.EmployeeID
    inner join employee as t3 on t1.VALIDAnalystID=t3.EmployeeID  
    where  (t1.builderanalystid=7 or t1.VALIDAnalystID=7) and
    StatusID <>12 and
    cast(BuildCMPLTDT as date)>= '2017-09-01'
    and cast(BuildCMPLTDT as date)< '2018-04-01'
    
    

관련 자료

  • 이전 c++ - 배열의 0 번째 인덱스를 변경하면 0 번째 인덱스보다 더 많이 변경되는 이유는 무엇입니까?
  • 다음 javascript - thisstatexxxmap은 함수가 아닙니다