programing

중복된 개별 반품 선택

css3 2023. 8. 28. 21:20

중복된 개별 반품 선택

다음과 같은 질문이 있습니다.

SELECT 
DISTINCT (TK.TICKETID),
TK.DESCRIPTION,
TK.CREATIONDATE,
TK.REPORTEDBY,
TK.OWNER,
WF.ASSIGNCODE
FROM ticket TK
INNER JOIN wfassignment WF on WF.OWNERID = TK.TICKETUID
WHERE TK.status not in ('ЧЕРНОВИК', 'ЗАКРЫТ', 'ВЫПОЛНЕН') AND WF.ASSIGNSTATUS not in ('COMPLETE', 'INACTIVE')
ORDER BY TK.TICKETID;

하지만 그것은 TK에서 중복을 반환합니다.TICKETID 특성입니다.그리고 다른 속성을 제거하면 예를 들어 괜찮습니다.

TK.TICKETID TK.DESCRIPTION TK.CREATIONDATE  TK.REPORTEDBY  TK.OWNER     WF.ASSIGNCODE
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   NOVIKOVVA
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   PRITULADV
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   SVESHNIKOVAV

다음 시간당 하나의 레코드만 반환하려면 어떻게 해야 합니까?TK.TICKETID?

선택 쿼리에는 여러 개의 열이 있으므로 쿼리는 대괄호 안에 있는 열뿐만 아니라 모든 열에서 고유성을 확인합니다.

SQL DISTINCT 키워드는 SELECT 문과 함께 사용하여 중복된 레코드를 모두 제거하고 고유한 레코드만 가져옵니다.단순한 열아니라 전체 레코드(전체 행)입니다.

쿼리를 다음으로 수정하는 경우:

SELECT 
DISTINCT (TK.TICKETID),
TK.DESCRIPTION,
TK.CREATIONDATE,
TK.REPORTEDBY,
TK.OWNER
FROM ticket TK
INNER JOIN wfassignment WF on WF.OWNERID = TK.TICKETUID
WHERE TK.status not in ('ЧЕРНОВИК', 'ЗАКРЫТ', 'ВЫПОЛНЕН') AND WF.ASSIGNSTATUS not in ('COMPLETE', 'INACTIVE')
ORDER BY TK.TICKETID;

단 하나의 결과만 얻을 수 있습니다.

출력에서 별표로 표시된 항목은 모두 다릅니다.

TK.TICKETID TK.DESCRIPTION TK.CREATIONDATE  TK.REPORTEDBY  TK.OWNER     **WF.ASSIGNCODE**
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   **NOVIKOVVA**
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   **PRITULADV**
О1013249    Право доступа   02.06.14        CHERNOVDK      SKACHKOVSV   **SVESHNIKOVAV**

사용해 보십시오.

SELECT 
TK.TICKETID,
TK.DESCRIPTION,
TK.CREATIONDATE,
TK.REPORTEDBY,
TK.OWNER,
max(WF.ASSIGNCODE)
FROM ticket TK
INNER JOIN wfassignment WF on WF.OWNERID = TK.TICKETUID
WHERE TK.status not in ('ЧЕРНОВИК', 'ЗАКРЫТ', 'ВЫПОЛНЕН') AND WF.ASSIGNSTATUS not in ('COMPLETE', 'INACTIVE')
group by
TK.TICKETID,
TK.DESCRIPTION,
TK.CREATIONDATE,
TK.REPORTEDBY,
TK.OWNER
ORDER BY TK.TICKETID;

언급URL : https://stackoverflow.com/questions/27015408/select-distinct-returns-duplicates