"작업"이라는 테이블이 있습니다. 이 테이블은 다음과 같은 필드가 있습니다SQL - 비슷한 값을 가진 레코드 찾기
- ID
- 유형 ID
가 어떻게이 유형 ID의 두 개 이상의 작업이 모든 작업을 찾을 수 있습니까 설명? 쿼리 할 TypeID가 없습니다. 오히려 여러 작업에 사용되는 TypeID가있는 작업을 나열하려고합니다. 어떻게해야할지 모르겠습니다.
도움 주셔서 감사합니다.
"작업"이라는 테이블이 있습니다. 이 테이블은 다음과 같은 필드가 있습니다SQL - 비슷한 값을 가진 레코드 찾기
가 어떻게이 유형 ID의 두 개 이상의 작업이 모든 작업을 찾을 수 있습니까 설명? 쿼리 할 TypeID가 없습니다. 오히려 여러 작업에 사용되는 TypeID가있는 작업을 나열하려고합니다. 어떻게해야할지 모르겠습니다.
도움 주셔서 감사합니다.
SELECT
*
FROM
Tasks
WHERE TypeID IN
(SELECT TypeID FROM Tasks
GROUP BY TypeID HAVING COUNT(*) > 1)
사용 :
# faster solution
SELECT A.*
FROM Tasks A,
Tasks B
WHERE B.id != A.id AND B.TypeID = A.TypeID
SELECT A.*
FROM Tasks A,
WHERE EXISTS (SELECT 1 FROM Tasks B WHERE B.id != A.id AND B.TypeID = A.TypeID)
ID별로 그룹화하는 것이 좋지 않습니다. 고유 한 키로 그룹화하고 있으므로 카운트가 1보다 큰 그룹이 될 수는 없습니다. –
@Timothy : Corrected. –
이 쿼리는 Description-to-TypeID가 1 대 1 인 것으로 가정합니다.하지만 지금 생각납니다. :) –
어떤 데이터베이스의 경우 : 다음으로 그룹을 사용하지 않고 그것을 할 수있는 방법은 두 가지가 있습니다
–