Compartilhar via


Parâmetros de consulta

Um parâmetro de consulta permite substituir valores em uma consulta em runtime. Qualquer cadeia de caracteres entre chaves duplas {{ }} é tratada como um parâmetro de consulta. Um widget aparece acima do painel de resultados onde você definiu o valor do parâmetro. Os parâmetros de consulta são mais flexíveis do que osfiltros de consulta e só devem ser usados nos casos em que os filtros de consulta não são suficientes.

Adicionar um parâmetro de consulta

  1. Digite Cmd + I. O parâmetro é inserido no cursor de texto e a caixa de diálogo Adicionar Parâmetro é exibida.
    • Palavra-chave: a palavra-chave que representa o parâmetro na consulta.
    • Título: o título que aparece acima do widget. Por padrão, o título é o mesmo que a palavra-chave.
    • Tipo: os tipos com suporte são Texto, Número, Data, Data e Hora, Data e Hora (com Segundos), Lista de menus suspensos e Lista de menus suspensos baseada em consulta. O padrão é Texto.
  2. Insira a palavra-chave; opcionalmente, substitua o título e selecione o tipo de parâmetro.
  3. Clique em Adicionar Parâmetro.
  4. No widget de parâmetro, defina o valor do parâmetro.
  5. Clique em Aplicar alterações.
  6. Clique em Save (Salvar).

Como alternativa, digite chaves duplas {{ }} e clicar no ícone de engrenagem próximo ao widget do parâmetro para editar as configurações.

Para executar a consulta com um valor de parâmetro diferente, insira o valor no widget e clique em Aplicar Alterações.

Editar um parâmetro de consulta

Para editar um parâmetro, clique no ícone de engrenagem ao lado do widget de parâmetro. Para impedir que os usuários que não são proprietários da consulta mudem o parâmetro, clique em Mostrar somente resultados. A caixa de diálogo de parâmetro <Keyword> é exibida.

Remover um parâmetro de consulta

Para remover um parâmetro de consulta, exclua o parâmetro da consulta. O widget de parâmetro desaparece e você pode reescrever sua consulta usando valores estáticos.

Alterar a ordem dos parâmetros

Para alterar a ordem em que os parâmetros são mostrados, você pode clicar e arrastar cada parâmetro para a posição desejada.

Tipos de parâmetro de consulta

Texto

Aceita uma cadeia de caracteres como entrada. A barra invertida, as aspas simples e aspas duplas têm escapes, e o Azure Databricks adiciona aspas a esse parâmetro. Por exemplo, uma cadeia de caracteres como mr's Li"s é transformada em 'mr\'s Li\"s' Um exemplo de como usar isso pode ser

SELECT * FROM users WHERE name={{ text_param }}

Número

Aceita um número como entrada. Um exemplo de como usar isso pode ser

SELECT * FROM users WHERE age={{ number_param }}

Para restringir o escopo dos valores de parâmetro possíveis ao executar uma consulta, use o tipo de parâmetro Lista suspensa. Um exemplo seria SELECT * FROM users WHERE name='{{ dropdown_param }}'. Quando selecionada no painel de configurações de parâmetro, é exibida uma caixa de texto na qual você insere os valores permitidos, cada valor separado por uma nova linha. Listas suspensas são parâmetros de texto. Para usar datas ou datas e horas em sua Lista Suspensa, insira-as no formato exigido pela fonte de dados. As cadeias de caracteres não têm escape. Você pode escolher uma lista de menu suspenso de valor único ou de vários valores.

  • Valor único: são necessárias aspas simples em torno do parâmetro.
  • Vários valores: ative a opção Permitir vários valores. Na lista suspensa Aspas, escolha se deseja deixar os parâmetros como inseridos (sem aspas) ou encapsular os parâmetros com aspas simples ou duplas. Se você escolher aspas, não precisará adicionar aspas ao redor do parâmetro.

Altere sua cláusula WHERE para usar a palavra-chave IN em sua consulta.

SELECT ...
FROM   ...
WHERE field IN ( {{ Multi Select Parameter }} )

O widget de seleção múltipla do parâmetro permite que você passe vários valores para o banco de dados. Se você selecionar a opção Aspas Duplas para o parâmetro Quotation, sua consulta refletirá o seguinte formato: WHERE IN ("value1", "value2", "value3")

Lista suspensa baseada em consulta

Aceita o resultado de uma consulta como entrada. Ela tem o mesmo comportamento do parâmetro Lista Suspensa. Você precisa salvar a consulta da lista suspensa de SQL do Databricks para usá-la como entrada em outra consulta.

  1. Clique na Lista suspensa baseada em consulta em Tipo no painel de configurações.
  2. Clique no campo Consulta e selecione uma consulta. Se a consulta de destino retornar um grande número de registros, o desempenho será prejudicado.

Se a consulta de destino retornar mais de uma coluna, o SQL do Databricks usará a primeira. Se a consulta de destino retornar as colunas name e value, o SQL do Databricks preencherá o widget de seleção de parâmetro com a coluna name, mas executará a consulta com ovalue associado.

Por exemplo, suponha que a consulta a seguir retorne os dados na tabela.

SELECT user_uuid AS 'value', username AS 'name'
FROM users
value name
1001 John Smith
1002 Jane Doe
1003 Tabelas do Bobby

Quando o Azure Databricks executa a consulta, o valor passado para o banco de dados será 1001, 1002 ou 1003.

Data e hora

O Azure Databricks oferece várias opções para parametrizar valores de data e de carimbo de data/hora, incluindo opções para simplificar a parametrização de intervalos de tempo. Selecione entre três opções de precisão variável:

Opção Precisão Type
Data dia DATE
Data e hora minute TIMESTAMP
Data e hora (com segundos) second TIMESTAMP

Ao escolher uma opção de parâmetro de intervalo, você cria dois parâmetros designados pelos sufixos .start e .end. Todas as opções passam parâmetros à consulta como literais de cadeia de caracteres. O Azure Databricks exige que você coloque os valores de data e hora entre aspas simples ('). Por exemplo:

-- Date parameter
SELECT *
FROM usage_logs
WHERE date = '{{ date_param }}'

-- Date and Time Range parameter
SELECT *
FROM usage_logs
WHERE modified_time > '{{ date_range.start }}' and modified_time < '{{ date_range.end }}'

Os parâmetros de data usam uma interface de seleção de calendário e o padrão usado é a data e a hora atuais.

Observação

O parâmetro de intervalo de datas retorna resultados corretos apenas para as colunas do tipo DATE. Para colunas TIMESTAMP, use uma das opções de data e intervalo de tempo.

Valores dinâmicos de data e intervalo de datas

Quando você adiciona um parâmetro de data ou de intervalo de datas à consulta, o widget de seleção mostra um ícone azul de raio. Clique nele para exibir valores dinâmicos como today, yesterday, this week, last week, last month ou last year. Esses valores são atualizados dinamicamente.

Importante

Datas e intervalos de datas dinâmicos não são compatíveis com consultas agendadas.

Usar parâmetros de consulta em painéis

Opcionalmente, as consultas podem aproveitar parâmetros ou valores estáticos. Quando uma visualização baseada em uma consulta parametrizada é adicionada a um painel, a visualização pode ser configurada para usar um:

  • Parâmetro de widget

    Os parâmetros de widget são específicos para apenas uma visualização em um dashboard, aparecem dentro do painel de visualização e os valores de parâmetro especificados se aplicam somente à consulta subjacente à visualização.

  • Parâmetro de dashboard

    Os parâmetros de dashboard podem ser aplicados a várias visualizações. Quando você adiciona uma visualização com base em uma consulta parametrizada a um dashboard, o parâmetro será adicionado por padrão como um parâmetro de dashboard. Os parâmetros de dashboard são configurados para uma ou mais visualizações em um painel e aparecem na parte superior do painel. Os valores de parâmetro especificados para um parâmetro de dashboard se aplicam às visualizações que reutilizam esse parâmetro de dashboard específico. Um painel pode ter vários parâmetros; cada um deles pode ser aplicado a algumas visualizações e não a outras.

  • Valor estático

    Os valores estáticos são usados em vez de um parâmetro que responde às alterações. Os valores estáticos permitem codificar um valor no lugar de um parâmetro e farão com que o parâmetro "desapareça" do dashboard ou do widget em que ele apareceu anteriormente.

Ao adicionar uma visualização contendo uma consulta parametrizada, você pode escolher o título e a fonte do parâmetro na consulta de visualização clicando no ícone de lápis apropriado . Você também pode selecionar a palavra-chave e um valor padrão. Confira Propriedades de parâmetro.

Após adicionar uma visualização em um dashboard, acesse a interface de mapeamento de parâmetros clicando nas reticências verticais na parte superior direita de um widget de dashboard e clicando em Alterar configurações de widget.

Propriedades do parâmetro

  • Título: o nome de exibição que aparece ao lado do seletor de valor em seu painel. Ele usa como padrão o parâmetro palavra-chave. Para editá-lo, clique no ícone de lápis Pencil Icon. Os títulos não são exibidos para parâmetros de painel estático, porque o seletor de valor está oculto. Se você selecionar Valor estático como a Origem do valor, o campo Título ficará esmaecido.

  • Palavra-chave: o literal de cadeia de caracteres desse parâmetro na consulta subjacente. Isso será útil para depuração se o painel não retornar os resultados esperados.

  • Valor padrão: o valor padrão é usado se nenhum outro valor for especificado. Para alterar isso na tela de consulta, execute a consulta com o valor do parâmetro desejado e clique no botão Salvar.

  • Origem do valor: a origem do valor do parâmetro. Clique no ícone de lápis Pencil Icon para escolher uma origem.

    • Novo parâmetro de painel: cria um novo parâmetro de nível de painel. Isso permite que você defina um valor de parâmetro em um único local no painel e o mapeie para várias visualizações.
    • Parâmetro de painel existente: mapear parâmetro para um parâmetro de painel existente. Você deve especificar o parâmetro de painel já existente.
    • Parâmetro de widget: exibe um seletor de valor dentro do widget de painel. Isso é útil para parâmetros únicos que não são compartilhados entre widgets.
    • Valor estático: escolhe um valor estático para o widget, independentemente dos valores usados em outros widgets. Os valores de parâmetros mapeados estaticamente não exibem um seletor de valor em lugares mais compactos do painel. Isso permite que você aproveite a flexibilidade dos parâmetros de consulta sem obstruir a interface do usuário em um painel quando não se espera que determinados parâmetros sejam alterados com frequência.

    Change parameter mapping

Perguntas Frequentes (FAQ)

Posso reutilizar o mesmo parâmetro várias vezes em uma única consulta?

Sim. Use o mesmo identificador entre chaves. Este exemplo usa o parâmetro {{org_id}} duas vezes.

SELECT {{org_id}}, count(0)
FROM queries
WHERE org_id = {{org_id}}

Posso usar vários parâmetros em uma única consulta?

Sim. Use um nome exclusivo para cada parâmetro. Este exemplo usa dois parâmetros: {{org_id}} e {{start_date}}.

SELECT count(0)
FROM queries
WHERE org_id = {{org_id}} AND created_at > '{{start_date}}'