Pivot Tables

피벗 테이블

피벗 테이블

JSON 표현
{
  "rows": [
    {
      object (PivotGroup)
    }
  ],
  "columns": [
    {
      object (PivotGroup)
    }
  ],
  "criteria": {
    integer: {
      object (PivotFilterCriteria)
    },
    ...
  },
  "filterSpecs": [
    {
      object (PivotFilterSpec)
    }
  ],
  "values": [
    {
      object (PivotValue)
    }
  ],
  "valueLayout": enum (PivotValueLayout),
  "dataExecutionStatus": {
    object (DataExecutionStatus)
  },

  // Union field source_data can be only one of the following:
  "source": {
    object (GridRange)
  },
  "dataSourceId": string
  // End of list of possible types for union field source_data.
}
필드
rows[]

object (PivotGroup)

피벗 테이블의 각 행 그룹

columns[]

object (PivotGroup)

피벗 테이블의 각 열 그룹화

criteria
(deprecated)

map (key: integer, value: object ( PivotFilterCriteria))

선택적 소스 열 오프셋당 필터의 매핑입니다.

필터는 피벗 테이블에 데이터를 집계하기 전에 적용됩니다. 맵의 키는 필터링할 소스 범위의 열 오프셋이고 값은 해당 열의 기준입니다.

예를 들어 소스가 C10:E15인 경우 0 키는 C 열에 대한 필터를 보유하는 반면 1 키는 D 열을 위한 것입니다.

이 필드는 지원 중단되고 filterSpecs로 대체됩니다.

filterSpecs[]

object (PivotFilterSpec)

피벗 테이블의 데이터를 집계하기 전에 소스 열에 적용된 필터입니다.

criteriafilterSpecs 모두 응답에 채워집니다. 업데이트 요청에 두 필드가 모두 지정된 경우 이 필드가 우선 적용됩니다.

values[]

object (PivotValue)

피봇 테이블에 포함할 값 목록입니다.

valueLayout

enum (PivotValueLayout)

값을 가로 (열)로 또는 세로로 (행) 나열해야 하는지 여부입니다.

dataExecutionStatus

object (DataExecutionStatus)

출력 전용. 데이터 소스 피벗 테이블의 데이터 실행 상태입니다.

공용체 필드 source_data는 피벗 테이블 데이터의 소스입니다. source_data는 다음 중 하나여야 합니다.
source

object (GridRange)

피벗 테이블에서 데이터를 읽는 범위입니다.

dataSourceId

string

피벗 테이블에서 데이터를 읽는 데이터 소스의 ID입니다.

피봇그룹

피벗 테이블의 단일 그룹 (행 또는 열)입니다.

JSON 표현
{
  "showTotals": boolean,
  "valueMetadata": [
    {
      object (PivotGroupValueMetadata)
    }
  ],
  "sortOrder": enum (SortOrder),
  "valueBucket": {
    object (PivotGroupSortValueBucket)
  },
  "repeatHeadings": boolean,
  "label": string,
  "groupRule": {
    object (PivotGroupRule)
  },
  "groupLimit": {
    object (PivotGroupLimit)
  },

  // Union field source can be only one of the following:
  "sourceColumnOffset": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
필드
showTotals

boolean

피벗 테이블에 이 그룹의 합계가 포함되어야 하는 경우 true입니다.

valueMetadata[]

object (PivotGroupValueMetadata)

그룹화된 값에 대한 메타데이터입니다.

sortOrder

enum (SortOrder)

이 그룹의 값이 정렬되어야 하는 순서입니다.

valueBucket

object (PivotGroupSortValueBucket)

정렬할 반대 피봇 그룹의 버킷입니다. 지정하지 않으면 이 그룹의 값이 알파벳순으로 정렬됩니다.

repeatHeadings

boolean

이 피봇 그룹의 제목을 반복해야 하는 경우 true입니다. 이는 행 그룹화에만 유효하며 열에서 무시됩니다.

기본적으로 Google에서는 동일한 제목의 상위 제목을 표시하지 않으므로 제목의 반복을 최소화합니다. 예를 들어 아래의 세 번째 행이 'Q1 Mar'에 해당하더라도 'Q1'은 이전 행과 중복되므로 표시되지 않습니다. repeatHeadings를 true로 설정하면 'Q1'이 '2월' 및 '3월'에 반복됩니다.

+--------------+
| Q1     | Jan |
|        | Feb |
|        | Mar |
+--------+-----+
| Q1 Total     |
+--------------+
label

string

맞춤설정할 수 있는 행/열 그룹에 사용할 라벨입니다. 예를 들어 다음 피봇 테이블에서 행 라벨은 Region(이름을 State(으)로 바꿀 수 있음)이고 열 라벨은 Product(이름을 Item로 변경할 수 있음)입니다. 2017년 12월 이전에 만들어진 피봇 테이블에는 헤더 라벨이 없습니다. 기존 피벗 테이블에 헤더 라벨을 추가하려면 기존 피벗 테이블을 삭제한 다음 동일한 매개변수를 사용하여 새 피벗 테이블을 만드세요.

+--------------+---------+-------+
| SUM of Units | Product |       |
| Region       | Pen     | Paper |
+--------------+---------+-------+
| New York     |     345 |    98 |
| Oregon       |     234 |   123 |
| Tennessee    |     531 |   415 |
+--------------+---------+-------+
| Grand Total  |    1110 |   636 |
+--------------+---------+-------+
groupRule

object (PivotGroupRule)

이 행/열 그룹에 적용할 그룹 규칙입니다.

groupLimit

object (PivotGroupLimit)

이 피벗 그룹에 적용할 행 또는 열의 수 한도입니다.

공용체 필드 source는 피벗 그룹의 데이터 소스입니다. source는 다음 중 하나여야 합니다.
sourceColumnOffset

integer

이 그룹화를 기반으로 하는 소스 범위의 열 오프셋입니다.

예를 들어 소스가 C10:E15인 경우 sourceColumnOffset0이면 이 그룹은 C열을 참조하고 오프셋 1D열을 참조합니다.

dataSourceColumnReference

object (DataSourceColumnReference)

이 그룹의 기반이 되는 데이터 소스 열에 대한 참조입니다.

PivotGroupValueMetadata 클래스의 생성자

피봇 그룹의 값에 대한 메타데이터입니다.

JSON 표현
{
  "value": {
    object (ExtendedValue)
  },
  "collapsed": boolean
}
필드
value

object (ExtendedValue)

메타데이터에 해당하는 계산된 값입니다. (formulaValue은 유효하지 않습니다. 값이 계산되기 때문입니다.)

collapsed

boolean

값에 해당하는 데이터가 축소된 경우 true입니다.

PivotGroupSortValueBucket

피벗 그룹에서 정렬에 사용해야 하는 값에 대한 정보입니다.

JSON 표현
{
  "valuesIndex": integer,
  "buckets": [
    {
      object (ExtendedValue)
    }
  ]
}
필드
valuesIndex

integer

이 그룹에 있는 값의 정렬 기준으로 사용할 PivotTable.values 목록의 오프셋입니다.

buckets[]

object (ExtendedValue)

정렬할 값을 선택할 버킷을 결정합니다.

예를 들어 하나의 행 그룹과 두 개의 열 그룹이 있는 피벗 테이블에서 행 그룹은 최대 두 개의 값을 나열할 수 있습니다. 첫 번째 값은 첫 번째 열 그룹의 값에, 두 번째 값은 두 번째 열 그룹의 값에 해당합니다. 값이 표시되지 않으면 열 그룹 위의 '총계'에 따라 행이 정렬되어야 함을 나타냅니다. 단일 값이 나열되면 해당 버킷의 '합계'를 사용하는 것과 같습니다.

PivotGroupRule

각 개별 값을 분할하지 않고 소스 데이터 열에 있는 값의 버킷을 정의하는 PivotGroup의 설정(선택사항)입니다. 소스 데이터의 각 열에는 그룹 규칙이 있는 PivotGroup를 하나만 추가할 수 있지만, 특정 열에는 규칙이 있는 PivotGroup와 없는 경우 PivotGroup을 모두 추가할 수 있습니다.

JSON 표현
{

  // Union field rule can be only one of the following:
  "manualRule": {
    object (ManualRule)
  },
  "histogramRule": {
    object (HistogramRule)
  },
  "dateTimeRule": {
    object (DateTimeRule)
  }
  // End of list of possible types for union field rule.
}
필드
공용체 필드 rulePivotGroup에 적용할 규칙입니다. rule는 다음 중 하나여야 합니다.
manualRule

object (ManualRule)

ManualRule.

histogramRule

object (HistogramRule)

HistogramRule.

dateTimeRule

object (DateTimeRule)

DateTimeRule.

수동 규칙

소스 데이터 열의 값을 선택한 이름의 버킷으로 수동으로 구성할 수 있습니다. 예를 들어 주별로 인구를 집계하는 피봇 테이블은 다음과 같습니다.

+-------+-------------------+
| State | SUM of Population |
+-------+-------------------+
| AK    |               0.7 |
| AL    |               4.8 |
| AR    |               2.9 |
...
+-------+-------------------+

를 수동 그룹 규칙에 그룹 목록 (예: groupName = 'Central', items = ['AL', 'AR', 'IA', ...])을 제공하여 시간대별로 인구를 집계하는 피봇 테이블로 변환할 수 있습니다. 소스 데이터에 시간대 열을 추가하고 피벗 테이블을 조정하면 비슷한 효과를 얻을 수 있습니다.

+-----------+-------------------+
| Time Zone | SUM of Population |
+-----------+-------------------+
| Central   |             106.3 |
| Eastern   |             151.9 |
| Mountain  |              17.4 |
...
+-----------+-------------------+
JSON 표현
{
  "groups": [
    {
      object (ManualRuleGroup)
    }
  ]
}
필드
groups[]

object (ManualRuleGroup)

그룹 이름과 각 그룹 이름에 매핑되는 소스 데이터의 해당 항목 목록

수동 규칙 그룹

그룹 이름과 이 이름으로 그룹에 배치해야 하는 소스 데이터의 항목 목록입니다.

JSON 표현
{
  "groupName": {
    object (ExtendedValue)
  },
  "items": [
    {
      object (ExtendedValue)
    }
  ]
}
필드
groupName

object (ExtendedValue)

문자열이어야 하는 그룹 이름입니다. 지정된 ManualRule의 각 그룹에는 고유한 그룹 이름이 있어야 합니다.

items[]

object (ExtendedValue)

이 그룹에 배치되어야 하는 소스 데이터의 항목입니다. 각 항목은 문자열, 숫자 또는 불리언일 수 있습니다. 항목은 지정된 ManualRule 내의 최대 한 그룹에 표시될 수 있습니다. 어떤 그룹에도 표시되지 않는 항목은 따로 표시됩니다.

히스토그램 규칙

소스 데이터 열의 숫자 값을 일정한 크기의 버킷으로 구성할 수 있습니다. HistogramRule.start에서 HistogramRule.end까지의 모든 값이 HistogramRule.interval 크기의 그룹에 배치됩니다. 또한 HistogramRule.start 아래의 모든 값은 한 그룹에 배치되고 HistogramRule.end 위의 모든 값은 다른 그룹에 배치됩니다. HistogramRule.interval만 필요하지만 HistogramRule.startHistogramRule.end가 모두 제공되면 HistogramRule.startHistogramRule.end보다 작아야 합니다. 예를 들어 행이 50개 이상인 연령별 평균 구매액을 보여주는 피벗 테이블은 다음과 같습니다.

+-----+-------------------+
| Age | AVERAGE of Amount |
+-----+-------------------+
| 16  |            $27.13 |
| 17  |             $5.24 |
| 18  |            $20.15 |
...
+-----+-------------------+

HistogramRule.start이 25, HistogramRule.interval가 20, HistogramRule.end이 65인 히스토그램 그룹 규칙을 적용하여 아래와 같은 피벗 테이블로 변환할 수 있습니다.

+-------------+-------------------+
| Grouped Age | AVERAGE of Amount |
+-------------+-------------------+
| < 25        |            $19.34 |
| 25-45       |            $31.43 |
| 45-65       |            $35.87 |
| > 65        |            $27.55 |
+-------------+-------------------+
| Grand Total |            $29.12 |
+-------------+-------------------+
JSON 표현
{
  "interval": number,
  "start": number,
  "end": number
}
필드
interval

number

생성되는 버킷의 크기입니다. 양수여야 합니다.

start

number

일정한 크기의 버킷에 항목을 배치하는 최소 값입니다. start보다 낮은 값은 단일 버킷에 포함됩니다. 이 필드는 선택사항입니다.

end

number

일정한 크기의 버킷에 항목을 배치하는 최댓값입니다. end 위의 값은 단일 버킷으로 구성됩니다. 이 필드는 선택사항입니다.

DateTimeRule

소스 데이터 열의 날짜-시간 값을 해당 날짜 또는 시간 값의 선택된 부분을 기준으로 버킷으로 구성할 수 있습니다. 예를 들어 날짜별 판매 거래를 보여주는 피벗 테이블을 살펴보겠습니다.

+----------+--------------+
| Date     | SUM of Sales |
+----------+--------------+
| 1/1/2017 |      $621.14 |
| 2/3/2017 |      $708.84 |
| 5/8/2017 |      $326.84 |
...
+----------+--------------+

DateTimeRuleType년 YEAR_MONTH인 날짜-시간 그룹 규칙을 적용하면 다음 피벗 테이블이 생성됩니다.

+--------------+--------------+
| Grouped Date | SUM of Sales |
+--------------+--------------+
| 2017-Jan     |   $53,731.78 |
| 2017-Feb     |   $83,475.32 |
| 2017-Mar     |   $94,385.05 |
...
+--------------+--------------+
JSON 표현
{
  "type": enum (DateTimeRuleType)
}
필드
type

enum (DateTimeRuleType)

적용할 날짜-시간 그룹 유형입니다.

DateTimeRuleType

사용 가능한 날짜-시간 그룹화 규칙 유형입니다. 이 문서에서는 스프레드시트 언어가 'en-US'라고 가정합니다. 하지만 날짜와 시간 실제 렌더링에서는 일부 규칙 유형에 스프레드시트의 언어를 사용합니다.

열거형
DATE_TIME_RULE_TYPE_UNSPECIFIED 기본 유형이며 사용하지 않습니다.
SECOND 0에서 59까지 초 단위로 날짜를 그룹화합니다.
MINUTE 날짜를 분 단위로 그룹화합니다(0~59).
HOUR 24시간제(0~23시)를 사용하여 시간을 그룹화합니다.
HOUR_MINUTE 24시간 시스템(예: 19:45)을 사용하여 시간을 시간 및 분별로 그룹화합니다.
HOUR_MINUTE_AMPM 12시간 체계(예: 오후 7:45)를 사용하여 시간을 시간 및 분별로 그룹화합니다. AM/PM 지정은 스프레드시트 언어에 따라 번역됩니다.
DAY_OF_WEEK 요일별로 날짜를 그룹화합니다(예: 일요일). 요일은 스프레드시트 언어에 따라 번역됩니다.
DAY_OF_YEAR 날짜를 일별로 그룹화합니다(1~366). 2월 29일 이후의 날짜는 윤년이 아닌 윤년과 다릅니다.
DAY_OF_MONTH 날짜를 기준으로 그룹화합니다(1~31).
DAY_MONTH 날짜를 일, 월(예: 11월 22일) 기준으로 그룹화합니다. 해당 월은 스프레드시트 언어에 따라 번역됩니다.
MONTH 날짜를 기준으로 그룹화합니다(예: 11월). 스프레드시트 언어에 따라 월이 변환됩니다.
QUARTER 분기별로 날짜를 그룹화합니다(예: 1분기(3월)).
YEAR 연도별로 날짜를 그룹화합니다(예: 2008).
YEAR_MONTH 연도와 월을 기준으로 날짜를 그룹화합니다(예: 2008-11월). 스프레드시트 언어를 기준으로 월이 변환됩니다.
YEAR_QUARTER 연도 및 분기별로 날짜를 그룹화합니다(예: 2008년 4분기).
YEAR_MONTH_DAY 연도, 월, 일을 기준으로 날짜를 그룹화합니다(예: 2008-11-22).

PivotGroupLimit

피벗 그룹의 행 또는 열에 대한 한도입니다.

JSON 표현
{
  "countLimit": integer,
  "applyOrder": integer
}
필드
countLimit

integer

개수 제한입니다.

applyOrder

integer

피벗 테이블에 그룹 한도가 적용되는 순서입니다.

피벗 그룹 한도는 낮은 순서에서 높은 순서 번호로 적용됩니다. 주문 번호는 0부터 연속된 정수로 정규화됩니다.

쓰기 요청의 경우 적용 주문을 완전히 맞춤설정하려면 모든 피벗 그룹 한도에 이 필드가 고유 번호로 설정되어 있어야 합니다. 그러지 않으면 PivotTable.rows 목록의 색인과 PivotTable.columns 목록의 색인에 따라 순서가 결정됩니다.

PivotFilterCriteria

피벗 테이블의 행 표시/숨기기 기준입니다.

JSON 표현
{
  "visibleValues": [
    string
  ],
  "condition": {
    object (BooleanCondition)
  },
  "visibleByDefault": boolean
}
필드
visibleValues[]

string

포함되어야 하는 값입니다. 여기에 나열되지 않은 값은 제외됩니다.

condition

object (BooleanCondition)

값을 표시하려면 true여야 하는 조건입니다. visibleValues는 이를 재정의하지 않습니다. 값이 표시되더라도 조건을 충족하지 않으면 값이 숨겨집니다.

A1 표기법의 범위를 참조하는 조건 값은 피벗 테이블 시트를 기준으로 평가됩니다. 참조는 완전히 처리되므로 피벗 테이블을 채우지 마세요. 예를 들어 '피벗 테이블 1'의 =A1 조건 값은 'Pivot Table 1'!$A$1로 처리됩니다.

피벗 테이블의 소스 데이터는 열 헤더 이름으로 참조할 수 있습니다. 예를 들어 소스 데이터에 이름이 'Revenue'와 'Cost'인 열이 있고 유형이 NUMBER_GREATER이고 값이 =Cost인 'Revenue' 열에 조건이 적용되는 경우 'Revenue' > 'Cost'가 포함된 열만 포함됩니다.

visibleByDefault

boolean

값이 기본적으로 표시되는지 여부입니다. true인 경우 visibleValues가 무시되고 condition(지정된 경우)를 충족하는 모든 값이 표시됩니다. false인 경우 visibleValues에 있고 condition에 모두 부합하는 값이 표시됩니다.

PivotFilterSpec 클래스의 생성자

특정 소스 열 오프셋과 연결된 피벗 테이블 필터 기준입니다.

JSON 표현
{
  "filterCriteria": {
    object (PivotFilterCriteria)
  },

  // Union field source can be only one of the following:
  "columnOffsetIndex": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
필드
filterCriteria

object (PivotFilterCriteria)

열의 기준입니다.

공용체 필드 source는 이 필터가 적용되는 소스 열입니다. source는 다음 중 하나여야 합니다.
columnOffsetIndex

integer

소스 범위의 0부터 시작하는 열 오프셋입니다.

dataSourceColumnReference

object (DataSourceColumnReference)

데이터 소스 열에 대한 참조입니다.

피봇 값

피벗 테이블의 값을 계산하는 방법에 대한 정의입니다.

JSON 표현
{
  "summarizeFunction": enum (PivotValueSummarizeFunction),
  "name": string,
  "calculatedDisplayType": enum (PivotValueCalculatedDisplayType),

  // Union field value can be only one of the following:
  "sourceColumnOffset": integer,
  "formula": string,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field value.
}
필드
summarizeFunction

enum (PivotValueSummarizeFunction)

값을 요약하는 함수입니다. formula가 설정된 경우 지원되는 값은 SUMCUSTOM뿐입니다. sourceColumnOffset가 설정되면 CUSTOM는 지원되지 않습니다.

name

string

값에 사용할 이름입니다.

calculatedDisplayType

enum (PivotValueCalculatedDisplayType)

지정된 경우 피봇 값이 다른 피봇 값으로 계산한 결과에 표시되어야 함을 나타냅니다. 예를 들어 computeDisplayType이 PERCENT_OF_GRAND_TOTAL로 지정된 경우 모든 피벗 값이 총 합계의 백분율로 표시됩니다. 스프레드시트 편집기에서는 피봇 테이블의 값 섹션에 '다음으로 표시'라고 합니다.

공용체 필드 value는 피벗 테이블의 값에 사용할 데이터입니다. 정확히 1개의 값을 설정해야 합니다. value는 다음 중 하나여야 합니다.
sourceColumnOffset

integer

이 값을 읽는 소스 범위의 열 오프셋입니다.

예를 들어 소스가 C10:E15인 경우 sourceColumnOffset0이면 이 값은 C 열을 참조하지만 오프셋 1D 열을 참조합니다.

formula

string

값을 계산하는 맞춤 수식입니다. 수식은 = 문자로 시작해야 합니다.

dataSourceColumnReference

object (DataSourceColumnReference)

이 값을 읽는 데이터 소스 열에 대한 참조입니다.

PivotValueSummarizeFunction

피봇 값을 요약하는 함수입니다.

열거형
PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED 기본값은 사용하지 않습니다.
SUM SUM 함수에 해당합니다.
COUNTA COUNTA 함수에 해당합니다.
COUNT COUNT 함수에 해당합니다.
COUNTUNIQUE COUNTUNIQUE 함수에 해당합니다.
AVERAGE AVERAGE 함수에 해당합니다.
MAX MAX 함수에 해당합니다.
MIN MIN 함수에 해당합니다.
MEDIAN MEDIAN 함수에 해당합니다.
PRODUCT PRODUCT 함수에 해당합니다.
STDEV STDEV 함수에 해당합니다.
STDEVP STDEVP 함수에 해당합니다.
VAR VAR 함수에 해당합니다.
VARP VARP 함수에 해당합니다.
CUSTOM 수식을 있는 그대로 사용해야 함을 나타냅니다. PivotValue.formula가 설정된 경우에만 유효합니다.

PivotValueComputedDisplayType

디스플레이에 대해 피봇 값이 계산될 수 있는 방식입니다.

열거형
PIVOT_VALUE_CALCULATED_DISPLAY_TYPE_UNSPECIFIED 기본값이며 사용하지 마세요.
PERCENT_OF_ROW_TOTAL 행 값의 백분율로 피벗 값을 표시합니다.
PERCENT_OF_COLUMN_TOTAL 피봇 값을 총 열 값의 백분율로 표시합니다.
PERCENT_OF_GRAND_TOTAL 피벗 값을 총 총계 값의 백분율로 표시합니다.

피봇 값 레이아웃

피벗 값의 레이아웃입니다.

열거형
HORIZONTAL 값은 가로 (열)로 표시됩니다.
VERTICAL 값은 세로 (행)로 표시됩니다.