2012-10-25 2 views
0

중복 파일 (.pst)을 찾아서 제거하고 결국 고유 한 전자 메일을 가져와야합니다. 현재 Powershell을 사용하여 폴더를 반복적으로 탐색하여 .pst 파일 만 찾은 다음 특정 메타 데이터를 .csv 파일로 내 보냅니다. .csv 파일을 SQL로 가져와 비교 (이름, 파일의 날짜 등) 할 것을 제안했습니다. 그 후, 나는 붙어있다.내가 가지고있는 정보로 중복 제거하는 가장 좋은 방법은 무엇입니까?

필요한 파일을 가져오고 나머지 파일을 삭제하는 데 가장 적합한 언어 나 프로그램은 무엇입니까? VB.Net (C# 시도 가능) 및 powershell에서 거의 작업하고 있습니다.

답변

1

당신은 SQL 데이터베이스로 .CSV를 가져했다는 것을 가정합니다. 테이블 이름이 pst라고 가정 해 봅시다.

첫째,

SELECT email, count(*) 
FROM psts 
GROUP BY email 

다음, 당신은 하나 개의 값을 가지고있는 사람을보고 싶지 않아, 얼마나 많은 레코드가 동일한 이메일 주소를 알아, 그래서하는

SELECT email, count(*) 
FROM psts 
GROUP BY email 
HAVING count(*) >= 2 

나는 코드의 수정 된 버전을 사용하는 경우,

SELECT out.email, count(*), out.<other fields you want to see> 
FROM psts out 
    INNER JOIN psts pst_count ON out.email = pst_count.email 
GROUP BY out.email 
HAVING count(*) >= 2 
+0

기록의 목록을 얻으려면 당신을 내 결과 (대부분 복제 된 데이터 일 가능성이 높음)를 알고 삭제할 폴더에 액세스 할 수있는 방법을 알고 있습니까? 난 단지 SQL (간단한 쿼리)의 기본 지식을 가지고 –

+0

글쎄, 그 데이터가 어디에 있다면, 그것은 <당신이보고 싶은 다른 필드>에있을 것입니다. –

1

파일 시스템을 편집하고 SQL 쿼리를 실행할 수있는 한 실제로 사용할 수 있습니다.

VB.net에 SQL Server 지원이 있는지는 잘 모르겠지만 .net 언어이기 때문에 나는 확신합니다.

나는 당신이 그 두 기능 : 지원 아는 어떤 언어로 갈 말하고 싶지만

관련 문제