tbldoc에서 [docid]의 여러 인스턴스를 나열하려고합니다. 여기서 tbldoc. [filename]은 두 번 이상 발생하며 id는 쉼표로 구분하고 [ 파일 이름]SQL 테이블에서 중복 찾기
this code works great to find duplicates:
SELECT cast([filename] as varchar(max)),
COUNT(cast([filename] as varchar(max)))
FROM tbldoc
GROUP BY cast([filename] as varchar(max))
HAVING (COUNT(cast([filename] as varchar(max))) > 1)
하지만 난 [DOCID]를 추가하려고 할 때 오류가 발생하는가 :
Column 'tbldoc.DocID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
이 내가 노력하고 무엇 :
SELECT [docid], cast([filename] as varchar(max)),
COUNT(cast([filename] as varchar(max)))
FROM tbldoc
GROUP BY cast([filename] as varchar(max))
HAVING (COUNT(cast([filename] as varchar(max))) > 1)
[docid]를 쉼표로 구분하여 나열하는 방법을 모르겠다. SQL에 관해서는 꽤 새로운 사용자이다.
[docids]|[filemame]|[instances]
12345,12346| excelfile.xls | 3
감사를 미리 도움말 사람/니네들에 대한 :
이 내가보고 싶은 출력입니다! =)
어떻게'excelfile.xls'의 인스턴스가 3 개 있지만'docids'는 2 개입니까? 동일한'docid'를 가진 여러 항목이 있습니까? –
이 질문은 쉼표로 구분 된 목록을 얻는 데 도움이 될 수 있습니다. http://stackoverflow.com/questions/1817985/how-do-i-create-a-comma-separated-list-using-a-sql-query –
염소, 그건 단지 형식화 된 예제 일뿐입니다. 빈약 한 예제는 2 개의 인스턴스를 보여주었습니다. – lyosha