Filtragem e Seleção de Dados com SQL
Deslize para mostrar o menu
Uma Temporary View é um alias com escopo de sessão para um DataFrame que permite interagir com seus dados usando a sintaxe SQL padrão. Não move nem duplica os dados; simplesmente fornece uma "janela" compatível com SQL para o DataFrame que está na memória do cluster.
Embora Python seja excelente para construir pipelines complexos, muitos profissionais de dados preferem a legibilidade e a rapidez do SQL para filtrar e selecionar dados. No Databricks, não é necessário escolher entre um ou outro. É possível transformar um DataFrame do Python em uma tabela SQL temporária (uma "view") e começar a consultá-lo imediatamente.
Criando uma Temporary View
Antes de executar uma consulta SQL em um DataFrame, é necessário atribuir um nome que o mecanismo SQL possa reconhecer. Isso pode ser feito utilizando o método createOrReplaceTempView.
# Create a SQL view named 'diamond_view' from our existing DataFrame
df.createOrReplaceTempView("diamond_view")
A parte "Replace" deste comando é importante: garante que, se você executar a célula novamente, ela apenas atualizará a visualização em vez de causar um erro. Esta visualização existirá apenas durante a sessão atual do seu notebook.
Consultando com o comando mágico %sql
Agora que a visualização está registrada, é possível alternar entre linguagens. Utilizando o comando mágico %sql no início de uma nova célula, você pode realizar as mesmas seleções e filtros feitos em Python, mas utilizando a sintaxe padrão do SQL.
%sql
SELECT carat, cut, depth
FROM diamond_view
WHERE price > 500
O Poder da Filtragem em SQL
SQL é especialmente intuitivo para filtragens complexas. É possível utilizar o operador IN para filtrar múltiplos valores ou o operador LIKE para correspondência de padrões – tarefas que costumam ser mais verbosas em Python.
%sql
SELECT * FROM diamond_view
WHERE cut IN ('Good', 'Premium')
AND clarity LIKE '%V%'
Seleção e Alias de Colunas
Em SQL, selecionar e renomear colunas é simples utilizando a palavra-chave AS. Esta é uma prática comum para tornar os cabeçalhos do relatório final mais profissionais.
%sql
SELECT
carat,
cut AS Diamond_Quality,
price AS Selling_Price
FROM diamond_view
Por que usar uma Visualização Temporária?
Você pode se perguntar: "Por que não consultar a tabela diretamente do Catálogo?" A vantagem de uma Visualização Temporária é permitir consultar um DataFrame que já foi parcialmente limpo ou modificado em Python. Ela serve como uma ponte, possibilitando o uso do Python para o processamento pesado de engenharia de dados e o SQL para a análise final e visualização.
1. Qual método Python deve ser executado antes de usar %sql para consultar um DataFrame?
2. O que acontece com uma "Visualização Temporária" ao desconectar o notebook do cluster ou encerrar a sessão?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo