2009-12-22 5 views
0

내가으로하는 수입 일부 비우호적 인 가져 오기 파일을 처리하고 안녕하세요 :액세스에 같은 테이블에서 여러 레코드를 병합

timestamp position  name 
001   2   Jon 
001   3   Bob 
001   1   Ann 
001   4   Mike 
002   1   Joe 
002   2   Sue 
003   1   Jeff 
004   5   James 
004   1   Andy 
004   2   Beth 
004   4   Mitch 
004   3   Chris 

그리고 thusly 히 표시하는 새 테이블을 만들 싶습니다

timestamp position1 position2 position3 position4  position5 
001   Ann   Jon   Bob   Mike 
002   Joe   Sue 
003   Jeff 
004   Andy   Beth   Chris  Mitch  James 
을 가장 가까운 내가 솔루션에 온이 포럼을 검색하여

은 다음과 같습니다

SELECT pos1.timestamp, pos1.name AS position1, pos2.name AS position2 
FROM table1 AS pos1 INNER JOIN table1 AS pos2 
ON pos1.timestamp = pos2.timestamp 
WHERE (((pos1.position)=1) AND ((pos2.position)=2)) 

내가 어떻게 t 알아낼 수 없습니다 o 이것을 내 사양으로 확장하면 어떤 도움이 많이 주어집니다. 이

TRANSFORM First(Table.[name]) AS FirstOfname 
SELECT Table.[timestamp] 
FROM [Table] 
GROUP BY Table.[timestamp] 
PIVOT Table.[position]; 

같은

+0

결국 원하는 결과를 얻었습니까? –

답변

1

시도 뭔가 나는 이것이 MS 액세스 크로스 탭 쿼리 마법사를 사용하여 만들었습니다.

또한

What is a CrossTab Query?

더 좋은 explenation를 보라.

  • 만들기 탭을 클릭하십시오.
  • 쿼리 마법사를 클릭하십시오.
  • 두 번째 옵션 (크로스 탭 쿼리 마법사)을 선택하고 확인을 누릅니다.
  • 입력 할 테이블을 선택하고 다음을 누르십시오.
  • 타임 스탬프를 선택하고 (단일)을 클릭하여 왼쪽에서 오른쪽으로 을 가리키고 다음을 클릭하십시오.
  • 위치를 선택하고 다음을 누릅니다.
  • 이름은 나머지 필드가됩니다. 첫 번째 선택 (기본값은 카운트)이고 다음에 히트가됩니다.
  • 히트 마무리.

Table_Crosstab (또는 이와 비슷한) 쿼리가 저장되어 있어야합니다. 이 항목을 마우스 오른쪽 버튼으로 클릭하고 디자인보기를 선택하십시오. 보기 단추에서 Sql보기를 선택하십시오.

당신은 당신이

TRANSFORM First(Table.name) AS FirstOfname 
SELECT Table.timestamp 
FROM [Table] 
GROUP BY Table.timestamp 
PIVOT Table.position; 

으로 끝낼 그리고 그것을해야한다고 그래서

, First(Table.name) AS [Total Of name] 

를 제거 두 번째 줄에서

TRANSFORM First(Table.name) AS FirstOfname 
SELECT Table.timestamp, First(Table.name) AS [Total Of name] 
FROM [Table] 
GROUP BY Table.timestamp 
PIVOT Table.position; 

에 비슷한 볼 수 있습니다. 저장하고 준비되었습니다.

+0

일반 성을 이해하지 못합니다 (오늘 액세스를 시작했습니다). 내 특정 상황에 대해 구체적으로 할 수 있으며 원하는 출력을 얻으려면 어떻게해야합니까? 고맙습니다. – cubew00t

+0

그래, 내가 몇 가지 단계를 추가했습니다. 붙어 있는지 물어보십시오. –

1

새 테이블의 디자인이 잘못되었습니다. 들어오는 데이터에 여섯 번째와 일곱 번째 사람이있을 때 어떻게됩니까? 또한 특정 사람이 모든 데이터를 추출해야 할 때 작업하기가 어려울 수 있으므로 5 개의 열을 쿼리해야합니다.

관련 문제