Voltar para a lista de artigos Artigos
18 minutos de leitura

Exportação de dados: Da consulta SQL para a planilha

Como exportar dados de um banco de dados SQL para o Excel ou outra planilha? Neste artigo, examinarei vários métodos e compartilharei algumas dicas para quando as coisas derem errado.

O SQL é o método mais amplamente usado para extrair dados de um banco de dados. Entretanto, não é o único dispositivo na caixa de ferramentas de um analista. Depois que as informações são extraídas, muitas vezes você deseja importá-las para uma planilha - talvez para fazer uma análise mais aprofundada ou apenas para deixá-las bonitas e apresentá-las à gerência. O SQL extrai os dados como texto simples, então como você pode colocá-los em uma planilha?

Como analista de dados, você precisará de habilidades em planilhas e em SQL. As planilhas são amplamente usadas e ensinadas nas escolas, portanto, presumo que você esteja familiarizado com o uso delas.

Se você ainda não é um especialista em SQL, talvez queira ler A melhor maneira de aprender SQL, que lhe dará algumas ideias sobre como começar. Eu também recomendaria o curso SQL para análise de dados do site LearnSQL.com.br. Especialmente desenvolvido para analistas de dados, esse curso consiste em quatro cursos que o levam do nível iniciante à proficiência em análise de dados com SQL. Leva cerca de 48 horas para ser concluído e ensinará você a resolver os tipos de problemas que encontrará no trabalho de análise.

Se você já sabe um pouco de SQL, mas gostaria de um pouco de ajuda, aqui está uma folha de consulta gratuita sobre SQL para análise de dados.

Relatórios SQL com o Excel

Neste artigo, vou me concentrar principalmente em como exportar dados SQL para planilhas, mas gostaria de dedicar alguns minutos para analisar por que você quer fazer isso. Vamos dar uma olhada em alguns cenários:

Você trabalha com marketing

Você usou o SQL para extrair dados demográficos e saber que tipo de produtos foram comprados por clientes de diferentes áreas e faixas etárias nos últimos dois anos. Agora você precisa fazer uma apresentação com gráficos e tabelas para justificar a campanha que tem em mente para o próximo ano.

Você pode usar uma planilha para criar esses gráficos e tabelas e dar a eles uma aparência profissional. As planilhas têm uma série de ferramentas úteis para os analistas de dados, incluindo:

  • Tabelas e gráficos.
  • Tabelas dinâmicas.
  • Mapas dinâmicos.
  • Opção de classificação e filtragem
  • Funções que realizam cálculos complexos.

Você trabalha em um banco

Você suspeita que há uma fraude em andamento. Você usou o SQL para extrair detalhes das transações suspeitas, mas precisa experimentar filtrar e classificar as transações e compará-las com outros eventos durante o período. Você provavelmente usaria uma planilha para fazer isso porque ela simplifica a análise dos dados de várias maneiras diferentes.

Você precisa enviar um relatório ao seu gerente

Todo mês, você precisa criar um relatório que mostre o total de vendas feitas a cada cliente. Sua consulta SQL produz isso:

Exportação de dados: Da consulta SQL para a planilha

No entanto, você gostaria de formatá-lo em um relatório atraente para seu gerente, como este:

Exportação de dados: Da consulta SQL para a planilha

Sempre haverá uma demanda por suas habilidades se você puder trabalhar com dados de planilhas do Excel, importar dados do SQL e produzir relatórios atraentes e significativos.

Exportação de dados SQL para planilhas

Muito bem, vamos ao ponto principal do artigo: como transferir seus dados de uma consulta SQL para uma planilha. Há muitos provedores de bancos de dados, cada um com um ambiente de trabalho ligeiramente diferente, e muitos tipos diferentes de planilhas. Isso dificulta a elaboração de um guia abrangente de exportação de consultas SQL, mas mostrarei como usar três bancos de dados populares ...

  • Google BigQuery,
  • Microsoft SQL Server e
  • MySQL

... com três planilhas diferentes:

  • Excel,
  • Libre Calc do pacote Libre Office e
  • Google Sheets.

Também presumo que você esteja em um PC com Windows. Os usuários de Linux e Mac precisarão usar os atalhos de teclado equivalentes a clicar com o botão direito do mouse e Crtl+.

Examinarei vários métodos e verei como eles podem ser usados com os softwares que mencionei. Você aprenderá o suficiente para exportar e importar dados em qualquer lugar, já que a maioria dos bancos de dados e planilhas é muito semelhante.

Mostrarei exemplos usando os dados públicos do BigQuery, o banco de dados de amostra AdventureWorks da Microsoft e o banco de dados de amostra Employee do MySQL.

Começarei com o método mais simples.

Método 1: Copiar e colar

Essa é a maneira mais rápida de exportar uma consulta SQL para uma planilha, e eu a uso 99% das vezes. Obviamente, primeiro você precisa executar uma consulta SQL para fornecer os dados.

Você não deve usar esse método para conjuntos de dados muito grandes, pois ele precisa armazenar os dados da área de transferência na memória. É possível que seu computador congele se o conjunto de dados for muito grande. Mais adiante neste artigo, examinarei alguns dos problemas que você pode encontrar com esse método e como resolvê-los.

Na imagem abaixo, escrevi uma consulta para extrair todos os clientes cujo aniversário é em janeiro. O departamento de relacionamento com o cliente pode usar isso para enviar e-mails de aniversário a eles. Estou usando o SQL Server Management Studio para executar a consulta, e este é o resultado:

Exportação de dados: Da consulta SQL para a planilha

Você pode copiar dados de duas maneiras. Primeiro, você destaca os dados. Em seguida, você pode clicar em Edit Copy (Editar Copiar ) no menu ou usar o atalho de teclado pressionando CTRL+C.

Exportação de dados: Da consulta SQL para a planilha

Isso copia as linhas que você destacou, além dos cabeçalhos, como dados separados por tabulação para a área de transferência.

Outra opção, se quiser copiar todas as linhas para a planilha, é clicar no quadrado em branco na parte superior, conforme indicado pela seta vermelha na imagem abaixo. Todas as linhas serão destacadas; você poderá então copiar os dados para a área de transferência.

Exportação de dados: Da consulta SQL para a planilha

Clicar com o botão direito do mouse no mesmo quadrado em branco abre um menu que lhe dá a opção de copiar com ou sem cabeçalhos.

Exportação de dados: Da consulta SQL para a planilha

Copiando dados do MySQL

Na captura de tela abaixo, você pode ver minha consulta para extrair todos os funcionários que terão mais de 65 anos no início de 2024; a empresa pode usar essas informações para considerar determinados funcionários para a aposentadoria. Estou usando o MySQL Workbench para executar a consulta.

Novamente, há algumas maneiras de copiar para a área de transferência: Editar → Copiar no menu ou CTRL+C. Isso copia os dados sem cabeçalhos e delimitados por tabulação.

Exportação de dados: Da consulta SQL para a planilha

Se você clicar na célula em branco na parte superior indicada na imagem abaixo, todas as linhas serão selecionadas. Se você copiá-lo para a área de transferência, ele incluirá os cabeçalhos.

Exportação de dados: Da consulta SQL para a planilha

Copiando dados do BigQuery

Na captura de tela abaixo, escrevi uma consulta para extrair uma lista de bancos registrados no FDIC. Esse é um banco de dados nos dados públicos do BigQuery. Estou usando o BigQuery Studio para executar a consulta.

Exportação de dados: Da consulta SQL para a planilha

Embora teoricamente você possa destacar linhas e usar CTRL+C ou o recurso de área de transferência do seu navegador, isso não funciona bem na prática - as colunas tendem a ficar fora de sincronia. A única boa maneira de copiar para a área de transferência é usar o recurso Salvar resultados destacado na imagem abaixo:

Exportação de dados: Da consulta SQL para a planilha

Isso lhe dá um menu:

Exportação de dados: Da consulta SQL para a planilha

Se você escolher Copiar para a área de transferência, os dados serão copiados como delimitados por tabulação com cabeçalhos. Observação: Dessa forma, você só pode copiar 1 MB de dados.

Colando no Excel

Uma simples operação de Colar - usando o ícone da área de transferência no menu Início ou digitando CTRL+V - traz os dados para o Excel, começando na posição do cursor. Normalmente, você terá de fazer alguma formatação para que os dados tenham uma boa aparência: ampliar colunas, adicionar títulos significativos etc.

Se os dados não estiverem como você esperava, há uma seção no final deste artigo sobre como corrigir problemas comuns na exportação de dados SQL para planilhas.

Colando no Libre Calc

No Libre Calc, você inicia a operação de colar digitando CTRL+V ou escolhendo Editar Colar no menu inicial. Em seguida, o programa permite que você defina algumas opções para controlar como os dados são importados. É exibido um menu pop-up:

Exportação de dados: Da consulta SQL para a planilha

Se você simplesmente clicar em OK, ele usará os padrões para importar os dados. Isso geralmente funciona bem, mas talvez você precise definir algumas opções se isso não acontecer.

A alteração mais comum que você faria seria definir o tipo de dados de uma coluna que está sendo importada incorretamente. Isso é feito clicando na coluna na janela de visualização de dados, que seleciona a coluna. Em seguida, é possível definir o tipo de dados clicando na caixa Tipo de coluna logo acima da seção de visualização e selecionando um tipo de dados:

Exportação de dados: Da consulta SQL para a planilha

Às vezes, por razões mais conhecidas pelos gremlins de bytes ocultos em todos os computadores, essa caixa de diálogo não aparece e os dados são colados usando os padrões. Em geral, isso não é problema. Mas se precisar definir qualquer uma das opções, você pode forçar a caixa de diálogo a aparecer escolhendo Edit Paste Special Paste Special no menu Home :

Exportação de dados: Da consulta SQL para a planilha

Isso abrirá outro menu:

Exportação de dados: Da consulta SQL para a planilha

Selecione Usar diálogo de importação de texto. Isso abrirá a mesma caixa de diálogo que vimos anteriormente.

Colando no Google Sheets

No Planilhas Google, basta posicionar o cursor e selecionar Editar Colar ou pressionar CTRL+V. Não há opções que permitam controlar como os dados são colados; ele simplesmente usa seus próprios padrões.

Método 2: Uso de arquivos CSV para transferir dados

Os arquivos CSV (valores separados por vírgula) são uma forma popular de transferir dados de um aplicativo para outro.

Você os usaria em vez de copiar e colar quando:

  • Os dados são muito grandes para caber convenientemente na área de transferência. Normalmente, não é recomendável usar o copiar e colar para mais de dez mil linhas.
  • Sua planilha estiver em uma máquina diferente da que está sendo usada para extrair os dados
  • Você deseja circular os dados para permitir que outra pessoa os importe para sua própria planilha.

As colunas no resultado da consulta serão separadas por vírgulas no arquivo CSV.

Extração de um arquivo CSV do SQL Server

Na janela de resultado da consulta, clique com o botão direito do mouse na célula em branco no canto superior esquerdo dos dados. Isso abrirá o menu a seguir.

Exportação de dados: Da consulta SQL para a planilha

Selecione Salvar resultados como. Em seguida, será exibida uma caixa de diálogo padrão de salvamento de arquivo para que você possa dar um nome ao arquivo CSV e navegar até o local onde deseja armazená-lo.

Exportação de dados: Da consulta SQL para a planilha

Extração de um arquivo CSV do MySQL

Logo acima da janela de resultados da consulta, há um recurso para exportar os resultados para um arquivo externo. Isso está destacado na imagem abaixo.

Exportação de dados: Da consulta SQL para a planilha

Se você clicar nessa opção, verá a caixa de diálogo File Save (Salvar arquivo ), que permite nomear o arquivo e navegar até o local onde deseja armazená-lo.

Extração de um arquivo CSV do BigQuery

No BigQuery Studio, há um botão Salvar resultados logo acima da janela de resultados. Ao clicar nele, você verá o seguinte menu:

Exportação de dados: Da consulta SQL para a planilha

Você pode então escolher:

  • Arquivo local CSV para salvar em seu computador. Isso abrirá a caixa de diálogo usual Salvar arquivo.
  • CSV (Google Drive). Isso será salvo em seu Google Drive, usando (na minha opinião) um nome de arquivo pouco amigável. Felizmente, ele exibirá um link conforme a imagem abaixo. Se você clicar no arquivo, poderá fazer coisas úteis com ele, como renomeá-lo, compartilhá-lo ou abri-lo no Google Sheets.
Exportação de dados: Da consulta SQL para a planilha

Como abrir um arquivo CSV no Excel

Você pode abrir um arquivo CSV no menu Arquivo Abrir. Quando a caixa de diálogo Abrir arquivo for exibida, navegue até o local onde você salvou o arquivo. Em algumas versões do Excel, os arquivos CSV serão listados automaticamente. Em outras, você terá que configurá-la para mostrar Todos os arquivos, como você verá na imagem abaixo:

Exportação de dados: Da consulta SQL para a planilha

Em seguida, você pode selecionar o arquivo e abri-lo.

Provavelmente, você precisará fazer alguma formatação para deixá-lo com boa aparência. Sempre use Salvar como para salvá-lo como uma pasta de trabalho do Excel, pois os arquivos CSV não podem incluir nenhuma formatação.

Como abrir um arquivo CSV no Libre Calc

No Libre Calc, escolha Arquivo Abrir e navegue até o local onde você salvou o arquivo. O Libre Calc mostra automaticamente todos os arquivos, portanto, você não deve ter problemas para encontrá-lo.

Depois de selecionar o arquivo e abri-lo, o Libre Calc exibirá a mesma caixa de diálogo de importação de texto que você já viu ao colar os resultados da consulta.

Como abrir um arquivo CSV no Planilhas Google

Abra uma nova planilha em branco e selecione Arquivo Importar.

Exportação de dados: Da consulta SQL para a planilha

Isso lhe dará várias opções quanto ao local de onde deseja importar o arquivo:

  • Se você salvou o arquivo no Google Drive, escolha My Drive e selecione o arquivo desejado.
  • Se o arquivo estiver em seu computador, escolha Upload. Isso permitirá que você arraste o arquivo para a janela. Ou você pode escolher Procurar para ir para a caixa de diálogo Abrir arquivo.

Em seguida, você verá as seguintes opções:

Exportação de dados: Da consulta SQL para a planilha

Normalmente, você pode simplesmente clicar em Importar dados e usar as configurações padrão. Mas talvez você queira alterar a opção Replace Spreadsheet (Substituir planilha ). Ao clicar nela, você terá várias opções úteis.

Exportação de dados: Da consulta SQL para a planilha

Se você desmarcar a opção Converter texto em números, datas e fórmulas, todos os dados serão importados como texto. Isso pode ser útil, já que, às vezes, datas e campos de texto que contêm números podem ser importados incorretamente. Por exemplo, um banco pode ter um número de conta numérico de 16 dígitos. Como o Google Sheets tem um limite de 15 dígitos significativos em campos numéricos, o número da conta pode ser corrompido por arredondamento.

Método 3: Recursos de exportação no software RDBMS

A maioria dos softwares de sistema de gerenciamento de banco de dados relacional (RDBMS) inclui recursos para exportar resultados de consultas. Darei uma breve olhada em alguns deles.

SQL Server

O SQL Server tem dois utilitários que são úteis para exportações de SQL para Excel. Ambos são bastante complicados, portanto, vou apenas descrever o que eles fazem e fornecer links para a documentação relevante da Microsoft.

  • Programa decópia em massa (BCP). O programa de cópia em massa foi projetado para copiar dados do SQL Server em vários formatos. Você pode usá-lo para criar arquivos CSV. E como é possível programá-lo para ser executado regularmente, é uma boa maneira de automatizar o SQL para o Excel ou qualquer outra planilha. Você pode aprender a usar o BCP aqui.
  • Assistente de importação e exportação do SQL Server. Ele pode exportar os resultados de uma consulta em vários formatos, inclusive no Excel. Você pode aprender a usar o assistente para exportar do banco de dados SQL para o Excel aqui. Como o Libre Calc e o Google Sheets podem abrir arquivos do Excel, você também pode usar esse método para exportar para esses programas.

MySQL

Na seção anterior, vimos como usar o MySQL Workbench para gerar os dados como um arquivo CSV. A opção Exportar conjunto de resultados para um arquivo externo também pode ser usada para gerar outros tipos de arquivo.

Exportação de dados: Da consulta SQL para a planilha

Como você pode ver, uma das opções é exportar para uma planilha do Excel. Isso exporta os dados como um arquivo XML de planilha, que pode ser importado com facilidade e precisão para o Excel. O Libre Office também abrirá com êxito os arquivos exportados dessa forma, mas o Google Sheets não.

BigQuery

O botão Salvar resultado no BigQuery pode ser usado para exportar os dados diretamente para o Google Sheets, como você pode ver nas opções abaixo. Essa é a maneira mais fácil e eficiente de importar dados do BigQuery para o Planilhas Google. Como o Planilhas Google permite exportar para o Excel e o Libre Calc pode abrir planilhas do Excel, você também pode usar esse método para trazer seus dados para qualquer um desses pacotes.

Exportação de dados: Da consulta SQL para a planilha

Método 4: Usar outras ferramentas de análise de dados para criar planilhas

Há muitas ferramentas de análise de dados no mercado e quase todas permitem usar SQL para extrair dados de um banco de dados. Várias delas também têm a opção de salvar os resultados como uma planilha. Como a maioria das ferramentas pode programar relatórios regularmente, elas podem ser uma boa maneira de produzir planilhas automaticamente quando necessário. Algumas das ferramentas que permitem que os dados sejam extraídos com SQL e salvos como planilhas são

  • Tableau
  • Relatórios Crystal
  • Power BI
  • Zoho Analytics
  • Relatórios Jasper

Problemas comuns encontrados na exportação de SQL para planilhas

Na maioria das vezes, seus dados serão importados corretamente para planilhas, mas, ocasionalmente, você encontrará problemas. Aqui estão alguns problemas comuns e suas soluções.

Todos os dados aparecem em uma única coluna

Você cola seus resultados no Excel. Mas, em vez de cada campo estar em uma coluna separada, todos eles aparecem em uma única coluna. Isso geralmente acontece quando o Excel "lembra" (de uma operação de colagem anterior) que deve usar algo diferente de tabulações como delimitadores. Os dados podem ter a seguinte aparência:

Exportação de dados: Da consulta SQL para a planilha

Para corrigir isso, vá para a guia Dados na faixa de opções. Certifique-se de que a opção Choose Text to Columns esteja selecionada:

Exportação de dados: Da consulta SQL para a planilha

Na caixa pop-up, escolha Delimitado e clique em Avançar. Na próxima caixa de diálogo, marque Tabs (Guias ) em Delimiters (Delimitadores) e, em seguida, Next(Avançar). Agora você terá a oportunidade de escolher os tipos de dados para cada coluna.

Exportação de dados: Da consulta SQL para a planilha

Se precisar alterar algum deles, clique na coluna e selecione o tipo nos botões de opção na parte superior. Isso é especialmente útil se você quiser que as datas apareçam em um formato diferente ou que os números sejam tratados como texto.

Se isso continuar acontecendo com você, o que pode fazer? Na próxima vez que você quiser colar dados, clique na seta abaixo do botão Colar. Isso lhe dará a opção de usar o assistente de importação de texto, ou seja, as caixas de diálogo que vimos no parágrafo anterior. Isso permitirá que você escolha Tab como o delimitador; o Excel "lembrará" essa escolha para futuras operações de colagem.

Exportação de dados: Da consulta SQL para a planilha

Suas datas estão na direção errada

Isso pode acontecer ao colar ou importar de um CSV. Às vezes, é apenas um problema de formatação: você pode selecionar a coluna e usar o comando Formatar para fazer com que as datas tenham a aparência que você deseja.

Mas, às vezes, o problema pode ser mais sério. O formato de data curta americano, por exemplo, é mm/dd/yyyy, enquanto o formato de data curta britânico é dd/mm/yyyy. Se o formato de data padrão na planilha for diferente do formato no seu aplicativo de banco de dados, você poderá acabar interpretando uma data que deveria representar 4 de janeiro como 1º de abril porque os dias e meses estão trocados.

A melhor maneira de evitar isso é fazer alguma formatação no SQL para garantir que as datas estejam no formato esperado pela planilha.

Seus números estão em notação científica

Se estiver vendo números em sua planilha que se parecem com 123456E+14, eles estão em notação científica. Isso pode ocorrer porque sua coluna é muito estreita; você pode resolver o problema ampliando a coluna. No entanto, é provável que o problema seja o fato de você ter um número com mais de 15 dígitos. Todas as três planilhas que examinamos não conseguem lidar com números maiores do que isso. Elas os arredondam automaticamente e os mostram em notação científica.

Isso é bom para aplicações científicas, mas não é tão bom em contabilidade - e definitivamente NÃO é bom se o número representar um número de conta de 16 dígitos!

Você pode fazer com que os números sejam exibidos corretamente tratando-os como texto, não como números. No entanto, você não conseguirá fazer aritmética com eles nesse formato.

Se você usou o recurso de cortar e colar para importar os dados, use o Assistente de importação de texto Colar especial para alterar o tipo de dados dessa coluna para texto.

Se os dados vieram de um arquivo CSV, a maneira mais fácil de importá-los corretamente é abrir o arquivo no Bloco de Notas (ou em qualquer outro editor de texto básico), selecionar e copiar todos os dados e usar Paste Special Text Import Wizard para especificar os tipos de dados.

Se os dados forem muito grandes para uma única operação de copiar/colar, talvez seja necessário fazer a operação de copiar/colar em partes menores.

Sua coluna de ID deixou de ter zeros à esquerda ou perdeu um dígito

Você pode ter uma coluna que contém um identificador numérico e os números podem ser muito grandes. Os zeros à esquerda são importantes aqui, pois fazem parte do ID.

A solução é a mesma que para os números que aparecem em notação científica: Tratar a coluna como texto, não como dados numéricos.

Desenvolva suas habilidades de SQL para planilhas

Como vimos, o SQL e as planilhas podem ser facilmente usados juntos para aproveitar o poder de ambos os aplicativos. O SQL é a porta de entrada para o mundo dos dados, e vale a pena aumentar suas habilidades nessa área.

Se você ainda não aprendeu SQL, nosso curso SQL para Iniciantes é um ótimo lugar para começar. E se você quiser realmente investir em seu futuro com SQL, o pacote Ilimitado Vitalício lhe dá acesso a todos os nossos cursos, inclusive os que ainda não foram escritos! Isso significa que você sempre poderá ficar por dentro de todos os novos recursos que serão adicionados ao SQL no futuro.

Se você puder usar o SQL e as planilhas - e fazer com que os dois trabalhem juntos - suas habilidades estarão sempre em demanda no mundo atual orientado por dados. Portanto, dê o primeiro passo hoje mesmo! Comece a aprender, comece a experimentar e assuma o controle de seu futuro!