Funções agregadas - Amazon Simple Storage Service

Funções agregadas

O Amazon S3 Select é compatível com as seguintes funções agregadas.

Função

Tipo de argumento

Tipo de retorno

AVG(expression)

INT, FLOAT, DECIMAL

DECIMAL para um argumento INTFLOAT para um argumento de ponto flutuante, caso contrário, é igual ao tipo de dados do argumento.

COUNT

-

INT

MAX(expression)

INT, DECIMAL

O mesmo que o tipo de argumento.

MIN(expression)

INT, DECIMAL

O mesmo que o tipo de argumento.

SUM(expression)

INT, FLOAT, DOUBLE, DECIMAL

INT para um argumento INTFLOAT para um argumento de ponto flutuante; do contrário, é igual ao tipo de dados do argumento.

Exemplo de SUM

Para agregar os tamanhos totais de objetos de uma pasta em um relatório do S3 Inventory, use uma expressão SUM.

O relatório do S3 Inventory a seguir é um arquivo CSV compactado com GZIP. Existem três colunas.

  • A primeira coluna é o nome do bucket do S3 (DOC-EXAMPLE-BUCKET) para o qual o relatório do S3 Inventory se destina.

  • A segunda coluna é o nome da chave do objeto que identifica exclusivamente o objeto no bucket.

    O valor example-folder/ na primeira linha é para a pasta example-folder. No Amazon S3, quando você cria uma pasta no bucket, o S3 cria um objeto de 0 byte com uma chave definida como o nome da pasta que você forneceu.

    O valor example-folder/object1 na segunda linha é para o objeto object1 na pasta example-folder.

    O valor example-folder/object2 na terceira linha é para o objeto object2 na pasta example-folder.

    Para obter mais informações sobre pastas do S3, consulte Organizar objetos no console do Amazon S3 usando pastas.

  • A terceira coluna é o tamanho do objeto em bytes.

"DOC-EXAMPLE-BUCKET","example-folder/","0" "DOC-EXAMPLE-BUCKET","example-folder/object1","2011267" "DOC-EXAMPLE-BUCKET","example-folder/object2","1570024"

Para usar uma expressão SUM para calcular o tamanho total da pasta example-folder, execute a consulta SQL com o Amazon S3 Select.

SELECT SUM(CAST(_3 as INT)) FROM s3object s WHERE _2 LIKE 'example-folder/%' AND _2 != 'example-folder/';

Resultado da consulta:

3581291