Referência da ferramenta de linha de comando

Neste documento, você encontra detalhes sobre os comandos e sinalizações da ferramenta de linha de comando bq. Para informações sobre como usar a CLI, consulte Como usar a ferramenta de linha de comando bq.

Sinalizações globais

Você pode usar as seguintes sinalizações globais com a ferramenta de linha de comando bq.

[OBSOLETO] Sinalizações de autorização da bq

O uso das sinalizações de autorização da bq foi suspenso. Para configurar a autorização da ferramenta de linha de comando bq, consulte Como autorizar ferramentas do SDK do Cloud.

--application_default_credential_file
Para mais informações, consulte Como configurar a autenticação para aplicativos de produção de servidor para servidor. O valor padrão é ''.
--credential_file
O nome de arquivo usado para armazenar o token OAuth. O valor padrão é $HOME/.bigquery.v2.token.
--service_account
Use o endereço de e-mail dessa conta de serviço para autorização. Por exemplo: 1234567890@developer.gserviceaccount.com. O valor padrão é ''.
--service_account_credential_file
O arquivo usado como armazenamento de credenciais para contas de serviço. Será necessário definir essa sinalização se você estiver usando uma conta de serviço.
--service_account_private_key_file
O arquivo que contém a chave privada da conta de serviço. Essa sinalização será necessária se --service_account for especificada. O valor padrão é ''.
--service_account_private_key_password
A senha da chave privada. A senha precisa corresponder à que você definiu na chave ao criá-la. O valor padrão é notasecret.
--use_gce_service_account
Especifique essa sinalização para usar credenciais de conta de serviço em vez de credenciais armazenadas ao executar uma instância do Google Compute Engine. Para mais informações, consulte Como criar e ativar contas de serviço para instâncias. O valor padrão é false.

Sinalizações globais da bq

--api
O endpoint da API a ser chamada. O valor padrão é https://www.googleapis.com.

--api_version A versão da API a ser usada. O padrão é v2.

--apilog
Registre todas as solicitações e respostas de API no arquivo especificado por essa sinalização. Também é possível usar stdout e stderr. A especificação da string vazia ('') será direcionada para stdout.
--bigqueryrc
O caminho para o arquivo de configuração da ferramenta de linha de comando. O arquivo de configuração especifica novos padrões para qualquer sinalização e, para ser substituído, basta especificar a sinalização na linha de comando. Se a sinalização --bigqueryrc não for especificada, a variável de ambiente BIGQUERYRC será usada. Se não for especificada, o caminho ~/.bigqueryrc será usado. O valor padrão é $HOME/.bigqueryrc.
--ca_certificates_file
O local do seu arquivo de certificado de CA. O valor padrão é ''.
--dataset_id
O conjunto de dados padrão a ser usado para solicitações. Essa sinalização é ignorada quando não aplicável. É possível definir o valor como project_id:dataset ou dataset. Se project_id não estiver presente, o projeto padrão será usado. Para substituir essa configuração, especifique a sinalização --project_id. O valor padrão é ''.
--debug_mode
Mostra rastreamentos em exceções do Python. O valor padrão é false.
--disable_ssl_validation
Desativa a validação do certificado HTTPS. O valor padrão é false.
--discovery_file
O nome do arquivo JSON a ser lido para descoberta. O valor padrão é ''.
--enable_gdrive
Quando definido como true, um novo token OAuth com escopo do GDrive é solicitado. Quando definido como false, um novo token OAuth sem escopo do GDrive é solicitado.
--fingerprint_job_id
Define se é necessário usar um ID do job derivado de uma impressão digital da configuração do job. Isso impedirá que o mesmo job seja executado várias vezes acidentalmente. O valor padrão é false.
--flagfile
Quando especificada, as definições de sinalização do arquivo fornecido são inseridas na ferramenta de linha de comando. O valor padrão é ''.
--format

Especifica o formato da saída do comando. As opções são estas:

  • pretty: saída de tabela formatada
  • sparse: saída de tabela mais simples
  • prettyjson: formato JSON fácil de ler
  • json: JSON compactado ao máximo
  • csv: formato csv com cabeçalho

pretty, sparse e prettyjson foram desenvolvidos para ser legíveis por humanos. json e csv são para transmissão a outro programa. Se none for especificado, o comando não produzirá saída. Se a sinalização --format não estiver presente, um formato de saída apropriado será escolhido com base no comando.

--headless

Especifica se é necessário executar a sessão da bq sem interação do usuário. Quando definido como true, a interação é desativada. Por exemplo, debug_mode não forçará a entrada no depurador, e a frequência da impressão informativa será reduzida. O valor padrão é false.

--job_id

O ID do job exclusivo a ser usado para a solicitação. Se não for especificado em uma solicitação de criação de job, ele será gerado. Essa sinalização aplica-se apenas aos comandos que criam jobs: cp, extract, load e query. Para mais informações, consulte Como executar jobs de maneira programática.

--job_property

Outro par de chave-valor a ser incluído no campo de propriedades da configuração do job. Repita essa sinalização para especificar outras propriedades.

--location

Uma string correspondente à sua região ou multirregião. A sinalização de local é obrigatória nos comandos cancel e show quando você usa a sinalização -j para mostrar informações sobre jobs. A sinalização de local é opcional nos seguintes comandos:

Todos os outros comandos ignoram a sinalização --location.

--max_rows_per_request

Um número inteiro que especifica o número máximo de linhas a serem retornadas por leitura.

--project_id

O ID do projeto a ser usado para solicitações. O valor padrão é ''.

--proxy_address

O nome ou endereço IP do host proxy a ser usado para conexão com o GCP. O valor padrão é ''.

--proxy_password

A senha a ser usada na autenticação com o host proxy. O valor padrão é ''.

--proxy_port

O número da porta a ser usado para se conectar ao host proxy. O valor padrão é ''.

--proxy_username

O nome de usuário a ser usado na autenticação com o host proxy. O valor padrão é ''.

--quiet ou -q

Se definido como true, ignora as atualizações de status enquanto os jobs estão em execução. O valor padrão é false.

--synchronous_mode ou -sync

Se definido como true, aguarda a conclusão do comando antes de retornar e usa o status de conclusão do job como o código do erro. Se definido como false, o job será criado e o status de conclusão bem-sucedida será usado para o código do erro. O valor padrão é true.

--trace

Um token de rastreamento especificado como token:token para incluir nas solicitações de API.

Sinalizações específicas de comando

Você pode usar as seguintes sinalizações de comando na ferramenta de linha de comando bq.

bq cancel

O comando cancel é usado para cancelar jobs. O comando cancel não tem sinalizações específicas.

Para mais informações sobre como usar o comando cancel, consulte Como gerenciar jobs.

O comando cancel usa as seguintes sinalizações globais.

--job_id
O ID do job exclusivo a ser usado para a solicitação de cancelamento. É possível especificar o ID do job sem usar a sinalização --job_id. Por exemplo: bq cancel [JOB_ID].
--synchronous_mode ou --sync
Quando especificada, aguarda a conclusão do comando antes de retornar. Se configurado como false, o comando retornará imediatamente. O valor padrão é true.

bq cp

O comando cp é usado para copiar tabelas. O comando cp usa as seguintes sinalizações específicas de comando.

Para mais informações sobre como usar o comando cp, consulte Como gerenciar tabelas.

--append_table ou -a
Quando especificada, copia uma tabela e a anexa a uma tabela atual. O valor padrão é false.
--destination_kms_key
A chave do Cloud KMS usada para criptografia dos dados da tabela de destino.
--force ou -f
Quando especificada, substitui a tabela de destino (se houver) sem enviar prompt. O valor padrão é false.
--no_clobber ou -n
Quando especificada, não substitui a tabela de destino (se houver). O valor padrão é false.

bq extract

O comando extract é usado para exportar dados da tabela ao Google Cloud Storage.

Para mais informações sobre como usar o comando extract, consulte Como exportar dados da tabela.

O comando extract usa as seguintes sinalizações específicas de comando.

--compression
O tipo de compactação a ser usado para arquivos exportados. Os valores possíveis incluem GZIP (somente CSV e JSON), DEFLATE (somente Avro), SNAPPY (somente Avro) e NONE. O valor padrão é NONE.
--destination_format

O formato dos dados exportados. Os valores possíveis incluem:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO

O valor padrão é CSV.

--field_delimiter ou -F

O caractere que indica o limite entre as colunas no arquivo de saída para exportações de CSV. \t e tab são permitidos como delimitadores de tabulação.

--print_header

Quando especificada, esse objeto imprime linhas de cabeçalho para formatos que tenham cabeçalhos. O valor padrão é true.

bq head

O comando head exibe linhas em uma tabela.

Para mais informações sobre como usar o comando head, consulte Como gerenciar dados de tabela.

O comando head usa as seguintes sinalizações específicas de comando.

--job ou -j
Especifique essa sinalização com um ID de job válido para ler os resultados de um job de consulta. O valor padrão é false.
--max_rows ou -n
Um número inteiro que indica a quantidade de linhas a serem impressas ao mostrar dados da tabela. O valor padrão é 100.
--selected_fields ou -c
Uma lista separada por vírgulas que indica um subconjunto de campos (incluindo campos aninhados e repetidos) para retornar ao mostrar dados da tabela. Se não for especificado, todas as colunas serão recuperadas.
--start_row ou -s
Um número inteiro que indica a quantidade de linhas a serem ignoradas antes de mostrar os dados da tabela. O valor padrão é 0 (começa na primeira linha).
--table ou -t
Especifique essa sinalização com um ID de tabela para ler as linhas de uma tabela. O valor padrão é false.

bq insert

O comando insert permite que você insira linhas de dados formatados do JSON delimitados por nova linha usando o buffer de streaming. Esse comando é usado apenas para testes. Use o método de API insertAll para fazer streaming de dados para o BigQuery.

Para mais informações, consulte Como fazer streaming de dados para o BigQuery.

O comando insert usa as seguintes sinalizações específicas de comando.

--ignore_unknown_values ou -i
Quando especificada, ignora valores em uma linha que não estejam presentes no esquema da tabela.
--skip_invalid_rows ou -s
Quando especificada, tenta inserir qualquer linha válida, mesmo que haja linhas inválidas.
--template_suffix ou -x
Quando especificada, trata a tabela de destino como um modelo base e insere as linhas em uma tabela de instâncias denominada {destination}{templateSuffix}. O BigQuery gerencia a criação da tabela de instâncias usando o esquema do modelo base.

bq load

O comando load carrega dados em uma tabela.

Para mais informações sobre como carregar dados do Google Cloud Storage usando o comando load, consulte:

Para mais informações sobre como carregar dados de uma fonte local usando o comando load, consulte Como carregar dados no BigQuery de uma fonte de dados local.

O comando load usa as seguintes sinalizações específicas de comando.

--allow_jagged_rows
Quando especificada, permite a falta de colunas opcionais à direita nos dados CSV.
--allow_quoted_newlines
Quando especificada, permite novas linhas entre aspas nos dados CSV.
--autodetect
Quando especificada, ativa a detecção automática de esquema para dados CSV e JSON.
--clustering_fields
Uma lista separada por vírgulas de até quatro nomes de colunas. Só é possível usar essa sinalização com tabelas particionadas.
--destination_kms_key
A chave do Cloud KMS para criptografia dos dados da tabela de destino.
--encoding ou -E
A codificação de caracteres usada nos dados. Os valores possíveis incluem:
  • ISO-8859-1 (também conhecido como Latin-1)
  • UTF-8
--field_delimiter ou -F
O caractere que indica o limite entre colunas nos dados. \t e tab são permitidos como delimitadores de tabulação.
--ignore_unknown_values
Ignora e não carrega linhas de arquivos CSV e JSON com valores de colunas extras que não correspondem ao esquema.
--max_bad_records
Um número inteiro que especifica o número máximo de registros inválidos permitidos antes de uma falha em todo o job. O valor padrão é 0. No máximo, cinco erros de qualquer tipo são retornados, independentemente do valor --max_bad_records.
--null_marker
Uma string personalizada opcional que representa um valor NULL nos dados CSV.
--projection_fields
Se usado com --source_format definido como DATASTORE_BACKUP, indica quais propriedades da entidade serão carregadas de uma exportação do Cloud Datastore como uma lista separada por vírgulas. Nomes de propriedades diferenciam maiúsculas e minúsculas e precisam fazer referência às propriedades de nível superior. O valor padrão é ''. Essa sinalização também pode ser usada com exportações do Cloud Firestore.
--quote
O caractere de aspas a ser usado antes e depois dos registros. O valor padrão é ". Para indicar nenhum caractere de aspas, use uma string vazia.
--replace
Quando especificada, os dados atuais são apagados quando novos dados são carregados. O valor padrão é false.
--schema
O caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type, field:data_type.
--schema_update_option

Ao anexar dados a uma tabela (em um job de carregamento ou consulta), ou ao substituir uma partição de tabela, especifica como atualizar o esquema da tabela de destino. Os valores possíveis incluem:

  • ALLOW_FIELD_ADDITION: permite que novos campos sejam adicionados.
  • ALLOW_FIELD_RELAXATION: permite o relaxamento de campos REQUIRED para NULLABLE.

Repita essa sinalização para especificar várias opções de atualização de esquema.

--skip_leading_rows

Um número inteiro que especifica a quantidade de linhas a ignorar no início do arquivo de origem.

--source_format

O formato dos dados de origem. Os valores possíveis incluem:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • DATASTORE_BACKUP
  • PARQUET
  • ORC
--time_partitioning_expiration

Um número inteiro que especifica (em segundos) quando uma partição baseada em tempo precisa ser excluída. O prazo de validade é a soma da data UTC da partição com o valor do número inteiro. Um número negativo indica que não há validade.

--time_partitioning_field

O campo usado para determinar como criar uma partição baseada em tempo. Se o particionamento baseado em tempo estiver ativado sem esse valor, a tabela será particionada com base no tempo de carregamento.

--time_partitioning_type

Ativa o particionamento baseado em tempo em uma tabela e define o tipo de partição. Atualmente, o único valor possível é DAY, que gera uma partição por dia.

--use_avro_logical_types

Se sourceFormat for definido como AVRO, indicará se é necessário converter os tipos lógicos nos tipos correspondentes (como TIMESTAMP), em vez de apenas usar os tipos brutos (como INTEGER).

bq ls

O comando ls lista objetos em uma coleção.

Para mais informações sobre como usar o comando ls, consulte:

O comando ls usa as seguintes sinalizações específicas de comando.

--all ou -a
Quando especificada, mostra todos os resultados: jobs de todos os usuários ou todos os conjuntos de dados (incluindo os ocultos). Essa sinalização não é necessária ao listar configurações ou execuções de transferência.
--datasets ou -d
Quando especificada, lista os conjuntos de dados. O valor padrão é false.
--filter

Conjuntos de dados de listas que correspondem à expressão do filtro. Use uma lista separada por espaço de chaves e valores de rótulo no formato labels.key:value. Para configurações de transferência, uma expressão de filtro no formato dataSourceIds:data_sources lista configurações de transferência para fontes de dados especificadas. Os valores possíveis incluem:

  • dcm_dt: Campaign Manager
  • google_cloud_storage: Cloud Storage
  • dfp_dt: Google Ad Manager
  • adwords: Google Ads
  • merchant_center: Google Merchant Center
  • play: Google Play
  • youtube_channel: relatórios de canal do YouTube
  • youtube_content_owner: relatórios do proprietário do conteúdo do YouTube

Também usada para execuções de transferência, uma expressão de filtro no formato states:state lista as execuções de transferência com os estados especificados. Os valores possíveis incluem: + SUCCEEDED + FAILED + PENDING + RUNNING + CANCELLED

--jobs ou -j

Quando especificada, lista os jobs. O valor padrão é false. Por padrão, o limite é de 100.000 resultados.

--max_creation_time

Um número inteiro que representa um carimbo de data/hora em milissegundos. Quando especificada com -j, essa sinalização lista os jobs criados antes do carimbo de data/hora.

--max_results ou -n

Um número inteiro indicando a quantidade máxima de resultados. O valor padrão é 50.

--min_creation_time

Um número inteiro que representa um carimbo de data/hora em milissegundos. Quando especificada com -j, essa sinalização lista os jobs criados depois do carimbo de data/hora.

--message_type

Para listar mensagens de registro de execução de transferência de um tipo específico, use messageTypes:message_type. Os valores possíveis incluem:

  • INFO
  • WARNING
  • ERROR
--models ou -m

Quando especificada, lista os modelos de ML do BigQuery.

--page_token ou -k

Quando especificada, lista os itens a partir desse token da página.

--projects ou -p

Quando especificada, mostra todos os projetos. O valor padrão é false.

--run_attempt

Defina essa sinalização como LATEST para listar apenas as últimas execuções de uma transferência.

--transfer_config

Quando especificada, lista as configurações de transferência. Ao usar essa sinalização, você também precisa especificar --transfer_location. O valor padrão é false.

--transfer_location

Lista as configurações de transferência no local especificado. O local da transferência é definido quando ela é criada.

--transfer_log

Quando especificada, lista as mensagens do registro de transferência para a execução especificada. O valor padrão é false.

--transfer_run

Quando especificada, lista as execuções de transferência. O valor padrão é false.

bq mk

O comando mk cria uma configuração de conjunto de dados, tabela, visualização ou transferência.

Para mais informações sobre como usar o comando mk com o BigQuery, consulte:

Para mais informações sobre como usar o comando mk com o serviço de transferência de dados do BigQuery, consulte:

O comando mk usa as seguintes sinalizações específicas de comando.

--clustering_fields
Uma lista separada por vírgulas com nomes de colunas usada para armazenar uma tabela em cluster. No momento, essa sinalização está disponível apenas para tabelas particionadas. Quando a sinalização é especificada, a tabela é particionada e armazenada em cluster usando as colunas mencionadas.
--data_location
(Legado) Especifica o local do conjunto de dados. Use a sinalização global --location em vez disso.
--data_source

Especifica a fonte de dados para uma configuração de transferência. Os valores possíveis incluem:

  • dcm_dt: Campaign Manager
  • google_cloud_storage: Cloud Storage
  • dfp_dt: Google Ad Manager
  • adwords: Google Ads
  • merchant_center: Google Merchant Center
  • play: Google Play
  • youtube_channel: relatórios de canal do YouTube
  • youtube_content_owner: relatórios do proprietário do conteúdo do YouTube

O valor padrão é ''.

--dataset ou -d

Quando especificada, cria um conjunto de dados. O valor padrão é false.

--default_partition_expiration

Um número inteiro que especifica o prazo de validade padrão, em segundos, para todas as partições em tabelas particionadas recém-criadas em um conjunto de dados. O prazo de validade é definido como a data UTC da partição acrescida do valor de número inteiro. Se essa propriedade for definida, ela substituirá a validade da tabela padrão no nível do conjunto de dados, se houver. Se você fornecer a sinalização --time_partitioning_expiration ao criar ou atualizar uma tabela particionada, a validade da partição no nível da tabela terá prioridade sobre a validade da partição padrão no nível do conjunto de dados.

--default_table_expiration

Um número inteiro que especifica o tempo de vida padrão, em segundos, para tabelas recém-criadas em um conjunto de dados. O prazo de validade é definido como a hora UTC atual mais esse valor.

--description

A descrição do conjunto de dados ou tabela.

--destination_kms_key

A chave do Cloud KMS usada para criptografar os dados da tabela.

--display_name

O nome de exibição da configuração de transferência. O valor padrão é ''.

--end_time

Um carimbo de data/hora que especifica o horário final para um intervalo de execuções de transferência. O formato é RFC3339 UTC "Zulu".

--expiration

Um número inteiro que especifica o prazo de validade da tabela ou da visualização. O prazo de validade é definido como a hora UTC atual mais esse valor.

--external_table_definition

Especifica uma definição de tabela usada para criar uma tabela externa. O valor pode ser uma definição de tabela in-line ou um caminho para um arquivo que contém uma definição de tabela JSON. O formato de uma definição in-line é schema@format=uri.

--force ou -f

Quando especificada, se um recurso já existir, o código de saída será 0. O valor padrão é false.

--label

Um rótulo a ser definido na tabela. O formato é key:value. Repita essa sinalização para especificar vários rótulos.

--params ou -p

Os parâmetros para uma configuração de transferência no formato JSON: {"parameter":"value"}. Os parâmetros variam de acordo com a fonte de dados. Para mais informações, consulte Introdução ao serviço de transferência de dados do BigQuery.

--refresh_window_days

Um número inteiro que especifica a janela de atualização para uma configuração de transferência em dias. O valor padrão é 0.

--require_partition_filter

Quando especificada, essa sinalização determina se um filtro de partição é necessário para consultas na tabela fornecida. Essa sinalização só se aplica a tabelas particionadas. O valor padrão é true.

--schema

O caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type,field:data_type. O valor padrão é ''.

--start_time

Um carimbo de data/hora que especifica o horário de início para um intervalo de execuções de transferência. O formato é RFC3339 UTC "Zulu".

--table ou -t

Quando especificada, cria uma tabela. O valor padrão é false.

--target_dataset

O conjunto de dados de destino para uma configuração de transferência. O valor padrão é ''.

--time_partitioning_expiration

Um número inteiro que especifica (em segundos) quando uma partição baseada em tempo precisa ser excluída. O prazo de validade é a soma da data UTC da partição com o valor do número inteiro. Um número negativo indica que não há validade.

--time_partitioning_field

O campo usado para determinar como criar uma partição baseada em tempo. Se o particionamento baseado em tempo estiver ativado sem esse valor, a tabela será particionada com base no tempo de carregamento.

--time_partitioning_type

Ativa o particionamento baseado em tempo em uma tabela e define o tipo de partição. Atualmente, o único valor possível é DAY, que gera uma partição por dia.

--transfer_config

Quando especificada, cria uma configuração de transferência. Ao usar essa sinalização, você também precisa especificar --data_source, --display_name, --target_dataset e --params. As opções para --params variam de acordo com a data_source específica. O valor padrão é false.

--transfer_run

Quando especificada, cria execuções de transferência para um período. O valor padrão é false.

--use_legacy_sql

Quando definida como false, usa uma consulta SQL padrão para criar uma visualização. O valor padrão é true (usa SQL legado).

--view

Quando especificada, cria uma exibição. O valor padrão é ''.

--view_udf_resource

O URI do Cloud Storage ou o caminho para um arquivo de código local que é carregado e avaliado imediatamente como um recurso de função definido pelo usuário usado pela consulta SQL de uma visualização. Repita essa sinalização para especificar vários arquivos.

bq mkdef

O comando mkdef cria uma definição de tabela no formato JSON para dados armazenados no Google Cloud Storage ou no Google Drive.

Para mais informações sobre como usar o comando mkdef, consulte Como criar um arquivo de definição de tabela para uma fonte de dados externa.

O comando mkdef usa as seguintes sinalizações específicas de comando.

--autodetect
Quando especificada, usa a detecção automática de esquema para dados CSV e JSON.
--ignore_unknown_values ou -i
Quando especificada, ignora valores em uma linha que não estejam presentes no esquema.
--source_format
O formato dos dados de origem. Os valores possíveis incluem:
  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • DATASTORE_BACKUP
  • GOOGLE_SHEETS O valor padrão é CSV.

bq partition

O comando partition é usado para converter tabelas com datas como nome (terminando em AAAAMMDD) em tabelas particionadas.

Para mais informações sobre como usar o comando partition, consulte Como converter tabelas fragmentadas por data em tabelas particionadas por tempo de ingestão.

O comando partition usa as seguintes sinalizações específicas de comando.

--no_clobber ou -n
Quando especificada, não substitui uma partição atual. O valor padrão é false.
--time_partitioning_expiration
Um número inteiro que especifica (em segundos) quando uma partição baseada em tempo precisa ser excluída. O prazo de validade é a soma da data UTC da partição com o valor do número inteiro. Um número negativo indica que não há validade.
--time_partitioning_type
Ativa o particionamento baseado em tempo em uma tabela e define o tipo de partição. Atualmente, o único valor possível é DAY, que gera uma partição por dia.

bq query

O comando query cria um job de consulta que executa a consulta SQL fornecida.

Para mais informações sobre como usar o comando query, consulte Como executar consultas interativas e em lote.

O comando query usa as seguintes sinalizações específicas de comando.

--allow_large_results
Quando especificada, ativa tamanhos de tabela de destino grandes para consultas SQL legadas.
--append_table
Quando especificada, anexa dados a uma tabela de destino. O valor padrão é false.
--batch
Quando especificada, executa a consulta no modo em lote. O valor padrão é false.
--clustering_fields
Se especificada, uma lista de colunas separada por vírgulas é usada para agrupar a tabela de destino em uma consulta. Essa sinalização precisa ser usada com as sinalizações de particionamento de tempo para criar uma tabela particionada por tempo de ingestão ou uma tabela particionada em uma coluna DATE ou TIMESTAMP. Quando a sinalização é especificada, a tabela é particionada e, em seguida, armazenada em cluster usando as colunas fornecidas.
--destination_kms_key
A chave do Cloud KMS usada para criptografar os dados da tabela de destino.
--destination_schema
O caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type,field:data_type. O valor padrão é ''.
--destination_table
O nome da tabela de destino para gravar os resultados da consulta. O valor padrão é ''.
--dry_run
Quando especificada, a consulta é validada, mas não executada.
--external_table_definition
A definição do nome da tabela e de esquema usada em uma consulta de tabela externa. O esquema pode ser um caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type,field:data_type. Para fornecer o nome e o esquema da tabela, use o formato table::path_to_file ou table::schema@source_format=cloud_storage_uri. Repita essa sinalização para consultar várias tabelas.
--flatten_results
Quando especificada, padroniza campos aninhados e repetidos nos resultados de consultas SQL legadas. O valor padrão é true.
--label
Um rótulo para aplicar a um job de consulta no formato key:value. Repita essa sinalização para especificar vários rótulos.
--max_rows ou -n
Um número inteiro que especifica o número de linhas a retornar nos resultados da consulta. O valor padrão é 100.
--maximum_bytes_billed
Um número inteiro que limita os bytes faturados pela consulta. Se a consulta ultrapassar o limite, ela falhará (sem gerar cobranças). Se não especificado, os bytes faturados são definidos como o padrão do projeto;
--min_completion_ratio
[Experimental] Um número entre 0 e 1 que especifica a fração mínima de dados que precisam ser verificados antes que uma consulta seja retornada. Se não definido, será usado o valor padrão 1.0 do servidor.
--parameter
Um arquivo JSON contendo uma lista de parâmetros de consulta ou um parâmetro de consulta no formato name:type:value. Um nome vazio gera um parâmetro de posição. type pode ser omitido para pressupor um valor STRING no formato name::value ou ::value. NULL produz um valor nulo. Repita essa sinalização para especificar vários parâmetros.
--replace
Se especificada, substitui a tabela de destino pelos resultados da consulta. O valor padrão é false.
--require_cache
Se especificada, executa a consulta apenas se os resultados puderem ser recuperados do cache.
--require_partition_filter
Se especificada, requer um filtro de partição para consultas na tabela fornecida. Essa sinalização só pode ser usada com uma tabela particionada.
--rpc
Se especificada, usa a API de consulta no estilo rpc em vez do método jobs.insert da API REST. O valor padrão é false.
--schedule
Transforma a consulta em uma programada recorrente. É necessário definir uma frequência de execução da consulta. Exemplos:
  • --schedule='every 24 hours'
  • --schedule='every 3 hours'
--schema_update_option

Ao anexar dados a uma tabela (em um job de carregamento ou consulta), ou ao substituir uma partição de tabela, especifica como atualizar o esquema da tabela de destino. Os valores possíveis incluem:

  • ALLOW_FIELD_ADDITION: permite que novos campos sejam adicionados.
  • ALLOW_FIELD_RELAXATION: permite o relaxamento de campos REQUIRED para NULLABLE.

Repita essa sinalização para especificar várias opções de atualização de esquema.

--start_row ou -s

Um número inteiro que especifica a primeira linha a retornar no resultado da consulta. O valor padrão é 0.

--target_dataset

Quando especificada com --schedule, atualiza o conjunto de dados de destino para uma consulta programada. A consulta deve ser DDL ou DML.

--time_partitioning_expiration

Um número inteiro que especifica (em segundos) quando uma partição baseada em tempo precisa ser excluída. O prazo de validade é a soma da data UTC da partição com o valor do número inteiro. Um número negativo indica que não há validade.

--time_partitioning_field

O campo usado para determinar como criar uma partição baseada em tempo. Se o particionamento baseado em tempo estiver ativado sem esse valor, a tabela será particionada com base no tempo de carregamento.

--time_partitioning_type

Ativa o particionamento baseado em tempo em uma tabela e define o tipo de partição. Atualmente, o único valor possível é DAY, que gera uma partição por dia.

--udf_resource

Essa sinalização aplica-se somente a consultas SQL legadas. Quando especificada, este é o URI do Cloud Storage ou o caminho para um arquivo de código local que é carregado e avaliado imediatamente como um recurso de função definido pelo usuário usado por uma consulta SQL legada. Repita essa sinalização para especificar vários arquivos.

--use_cache

Quando especificada, armazena em cache os resultados da consulta. O valor padrão é true.

--use_legacy_sql

Quando definida como false, executa uma consulta SQL padrão. O valor padrão é true (usa SQL legado).

bq rm

O comando rm exclui uma configuração de conjunto de dados, tabela, visualização, modelo ou transferência.

Para mais informações sobre como usar o comando rm, consulte:

O comando rm usa as seguintes sinalizações específicas de comando.

--dataset ou -d
Quando especificada, exclui um conjunto de dados. O valor padrão é false.
--force ou -f
Quando especificada, exclui uma tabela, visualização, modelo ou conjunto de dados sem prompt. O valor padrão é false.
--model ou -m
Quando especificada, exclui um modelo de ML do BigQuery.
--recursive ou -r
Quando especificada, exclui um conjunto de dados e quaisquer tabelas, dados da tabela ou modelos contidos nele. O valor padrão é false.
--table ou -t
Quando especificada, exclui uma tabela. O valor padrão é false.
--transfer_config
Quando especificada, exclui uma configuração de transferência. O valor padrão é false.

bq show

O comando show exibe informações sobre um objeto.

Para mais informações sobre como usar o comando show, consulte:

O comando show usa as seguintes sinalizações específicas de comando.

--dataset ou -d
Quando especificada, exibe informações sobre um conjunto de dados. O valor padrão é false.
--encryption_service_account
Quando especificada, exibe a conta de serviço para um usuário, se existir, ou cria uma, se necessário. O valor padrão é false.
--job ou -j
Se especificada, mostra informações sobre um job. O valor padrão é false.
--model ou -m
Se especificada, mostra informações sobre um modelo de ML do BigQuery.
--schema
Quando especificada, exibe apenas o esquema da tabela. O valor padrão é false.
--transfer_config
Quando especificada, exibe informações sobre uma configuração de transferência. O valor padrão é false.
--transfer_run
Quando especificada, exibe informações sobre uma execução de transferência. O valor padrão é false.
--view
Quando especificada, exibe informações sobre uma visualização. O valor padrão é false.

bq update

O comando update atualiza uma configuração de conjunto de dados, tabela, visualização, modelo ou transferência.

Para mais informações sobre como usar o comando update, consulte:

O comando update usa as seguintes sinalizações específicas de comando.

--clear_label
Remove um rótulo usando o formato key:. Repita essa sinalização para remover vários rótulos.
--dataset ou -d
Atualiza um conjunto de dados. O valor padrão é false.
--default_partition_expiration

Um número inteiro que especifica o prazo de validade padrão, em segundos, para todas as partições em tabelas particionadas recém-criadas em um conjunto de dados. Essa sinalização não tem valor mínimo.

O prazo de validade é definido como a data UTC da partição acrescida do valor de número inteiro. Se essa propriedade for definida, ela substituirá a validade da tabela padrão no nível do conjunto de dados, se houver. Se você fornecer a sinalização --time_partitioning_expiration ao criar ou atualizar uma tabela particionada, a validade da partição no nível da tabela terá prioridade sobre a validade da partição padrão no nível do conjunto de dados. Especifique 0 para remover uma validade atual.

--default_table_expiration

Um número inteiro que atualiza a duração padrão, em segundos, para tabelas recém-criadas em um conjunto de dados. O prazo de validade é definido como a hora UTC atual mais esse valor. Especifique 0 para remover a validade atual.

--description

Atualiza a descrição de um conjunto de dados, tabela, modelo ou visualização.

--display_name

Atualiza o nome de exibição para uma configuração de transferência. O valor padrão é ''.

--etag

Atualiza os recursos somente se houver correspondência do etag.

--expiration

Um número inteiro que atualiza o prazo de validade em segundos para uma tabela, visualização ou modelo. Especifique 0 para remover o prazo de validade.

--external_table_definition

Atualiza uma tabela externa com a definição de tabela especificada. O esquema pode ser um caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type,field:data_type. Para fornecer o nome e o esquema da tabela, use o formato table::path_to_file ou table::schema@source_format=cloud_storage_uri.

--model ou -m

Atualiza os metadados de um modelo de ML do BigQuery.

--params ou -p

Atualiza parâmetros para uma configuração de transferência no formato JSON: {"parameter":"value"}. Os parâmetros variam de acordo com a fonte de dados. Para mais informações, consulte Introdução ao serviço de transferência de dados do BigQuery.

--refresh_window_days

Um número inteiro que especifica uma janela atualizada (em dias) para uma configuração de transferência.

--schema

O caminho para um arquivo de esquema JSON local ou uma lista separada por vírgulas de definições de coluna no formato field:data_type,field:data_type. O valor padrão é ''.

--set_label

Um rótulo para atualização no formato key:value. Repita essa sinalização para atualizar vários rótulos.

--source

O caminho para o arquivo JSON local que contém um payload usado para atualizar um recurso. Por exemplo, é possível usar essa sinalização para especificar um arquivo JSON que contenha um recurso de conjunto de dados com uma propriedade de access atualizada. O arquivo é usado para substituir os controles de acesso do conjunto de dados.

--table ou -t

Quando especificada, atualiza uma tabela. O valor padrão é false.

--target_dataset

Quando especificada, atualiza o conjunto de dados de destino para uma configuração de transferência. O valor padrão é ''.

--time_partitioning_expiration

Um número inteiro que atualiza (em segundos) quando uma partição baseada em tempo precisa ser excluída. O prazo de validade é a soma da data UTC da partição com o valor do número inteiro. Um número negativo indica que não há validade.

--time_partitioning_field

Atualiza o campo usado para determinar como criar uma partição baseada em tempo. Se o particionamento baseado em tempo estiver ativado sem esse valor, a tabela será particionada com base no tempo de carregamento.

--time_partitioning_type

Atualiza o tipo de particionamento baseado em tempo para uma tabela. Atualmente, o único valor possível é DAY, que gera uma partição por dia.

--transfer_config

Quando especificada, atualiza uma configuração de transferência. O valor padrão é false.

--update_credentials

Quando especificada, atualiza as credenciais de configuração de transferência. O valor padrão é false.

--use_legacy_sql

Quando definida como false, atualiza a consulta de SQL legado de uma exibição para SQL padrão. O valor padrão é true, usar SQL legado.

--view

Quando especificada, atualiza a consulta SQL de uma exibição. O valor padrão é ''.

--view_udf_resource

Atualiza o URI do Cloud Storage ou o caminho para um arquivo de código local, carregado e avaliado imediatamente, como recurso de uma função definida pelo usuário na consulta SQL de uma visualização. Repita essa sinalização para especificar vários arquivos.

bq wait

O comando wait aguarda alguns segundos para que um job seja concluído.

O comando wait usa a sinalização global --job_id e as seguintes sinalizações específicas do comando.

integer
Um valor inteiro maior ou igual a 0 que especifica o tempo de espera. Esse valor não é uma sinalização: você especifica o número inteiro na linha de comando. Se você digitar 0, o comando pesquisará pela conclusão do job e retornará imediatamente. Se você não especificar um valor inteiro, o comando aguardará para sempre.
--fail_on_error
Quando especificada, após o tempo de espera decorrido, ocorrerá um erro se o job ainda estiver em execução ou terminar em falha. O valor padrão é true.
--wait_for_status

Quando especificada, aguarda um determinado status do job antes de sair. Os valores possíveis incluem:

  • PENDING
  • RUNNING
  • DONE

O valor padrão é DONE.

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.