기본 콘텐츠로 건너뛰기 보완적인 콘텐츠로 건너뛰기

autonumber - 스크립트 함수

이 스크립트 함수는 스크립트 실행 중에 발견된 expression의 평가된 각 고유 값에 해당하는 고유 정수 값을 반환합니다. 이 함수는 복잡한 키의 간단한 메모리 표현을 만드는 경우 등에 사용할 수 있습니다.

정보 메모테이블을 읽는 순서에 따라 정수가 생성되므로 동일한 데이터 로드 시 생성된 autonumber 키만 연결할 수 있습니다. 데이터 로드 간에 영구적인 키를 사용해야 하는 경우, 소스 데이터 정렬과 관계없이 hash128, hash160 또는 hash256 함수를 사용해야 합니다.

구문:  

autonumber(expression[ , AutoID])

인수:  

인수 설명
AutoID

스크립트 내의 여러 키에 대해 autonumber 함수를 사용할 때 복수의 카운터 인스턴스를 만들려면 선택적 파라메타인 AutoID를 사용하여 각 카운터에 이름을 지정할 수 있습니다.

복합 키 만들기

이 예에서는 메모리를 절약하기 위해 autonumber 함수를 사용하여 복합 키를 만듭니다. 예는 데모용으로 간략하게 나와 있지만 다량의 행이 포함된 테이블에서는 의미가 있습니다.

데이터 예
Region Year Month Sales
North 2014 May 245
North 2014 May 347
North 2014 June 127
South 2014 June 645
South 2013 May 367
South 2013 May 221

소스 데이터는 인라인 데이터를 사용하여 로드됩니다. 그 다음, Region, YearMonth 필드에서 복합 키를 만드는 이전 로드를 추가합니다.

RegionSales: LOAD *, AutoNumber(Region&Year&Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Sales North, 2014, May, 245 North, 2014, May, 347 North, 2014, June, 127 South, 2014, June, 645 South, 2013, May, 367 South, 2013, May, 221 ];

 

결과 테이블은 다음과 같습니다.

결과 테이블
Region Year Month Sales RYMkey
North 2014 May 245 1
North 2014 May 347 1
North 2014 June 127 2
South 2014 June 645 3
South 2013 May 367 4
South 2013 May 221 4

이 예에서는 다른 테이블에 연결해야 하는 경우 'North2014May' 문자열 대신 RYMkey(예: 1)를 참조할 수 있습니다.

이제 비용에 대한 소스 테이블을 비슷한 방법으로 로드합니다. Region, YearMonth 필드는 가상 키가 생성되지 않도록 하기 위해 이전 로드에서 제외되며, autonumber 함수를 사용하여 테이블을 연결하는 복합 키를 이미 만드는 중입니다.

RegionCosts: LOAD Costs, AutoNumber(Region&Year&Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Costs South, 2013, May, 167 North, 2014, May, 56 North, 2014, June, 199 South, 2014, June, 64 South, 2013, May, 172 South, 2013, May, 126 ];

 

이제 테이블 시각화를 시트에 추가하고, Region, YearMonth 필드와 더불어 Sum 계수를 Sales 및 Costs에 대해 추가할 수 있습니다. 테이블은 다음과 같습니다.

결과 테이블
Region Year Month Sum([Sales]) Sum([Costs])
Totals - - 1952 784
North 2014 June 127 199
North 2014 May 592 56
South 2014 June 645 64
South 2013 May 588 465

이 페이지가 도움이 되었습니까?

이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 개선 방법을 알려 주십시오!