Fundamentos de Consultas
Fundamentos de escrita, execução e gerenciamento de consultas SQL usando o poderoso editor de consultas do HarborDB.
Bem-vindo ao mundo das consultas SQL no HarborDB! Este guia ensinará os fundamentos de escrita, execução e gerenciamento de consultas SQL usando o poderoso editor de consultas do HarborDB.
Introdução ao SQL no HarborDB
O editor de consultas do HarborDB foi projetado para tornar a escrita e execução de consultas SQL intuitivas e eficientes. Seja recuperando dados, atualizando registros ou criando objetos de banco de dados, o HarborDB fornece um fluxo de trabalho simplificado com recursos como realce de sintaxe, preenchimento automático e resultados em tempo real.
Principais Recursos do Editor de Consultas
- Realce de Sintaxe: Palavras-chave, funções e literais SQL são codificados por cores para melhor legibilidade
- Preenchimento Automático: Nomes de tabelas, nomes de colunas e palavras-chave SQL são sugeridos conforme você digita
- Múltiplas Abas: Trabalhe com várias consultas simultaneamente em abas separadas
- Painel de Resultados: Visualize os resultados das consultas imediatamente abaixo do seu editor
- Opções de Exportação: Exporte resultados para CSV ou JSON com um clique
- Histórico de Consultas: Acesse consultas executadas recentemente
- Favoritos: Salve consultas usadas com frequência para acesso rápido
Escrevendo Sua Primeira Consulta
Declaração Básica SELECT
A consulta SQL mais fundamental recupera dados de uma tabela:
SELECT * FROM users;
Esta consulta:
- SELECT *: Retorna todas as colunas da tabela
- FROM users: Especifica a tabela para consultar
- ;: Termina a declaração (opcional no HarborDB)
Selecionando Colunas Específicas
Para recuperar apenas colunas específicas:
SELECT first_name, last_name, email FROM users;
Limitando Resultados
Ao trabalhar com tabelas grandes, é uma boa prática limitar os resultados:
SELECT * FROM orders LIMIT 10;
A Interface do Editor de Consultas
Componentes Principais
- Área do Editor: Escreva suas consultas SQL aqui
- Barra de Ferramentas: Controles de execução, cancelamento, formatação e exportação
- Painel de Resultados: Exibe os resultados das consultas e informações de execução
- Barra de Status: Mostra informações de conexão, contagem de linhas e tempo de execução
Atalhos de Teclado
| Atalho | Ação |
| ------------ | --------------------- |
| ⌘ + R | Executar consulta |
| ⌘ + . | Cancelar consulta |
| ⌘ + T | Nova aba de consulta |
| ⌘ + W | Fechar aba atual |
| ⌘ + S | Salvar consulta |
| ⌘ + F | Encontrar na consulta |
| ⌘ + / | Alternar comentário |
| Tab | Indentar seleção |
| Shift + Tab| Remover indentação |
Executando Consultas
Execução Passo a Passo
- Escreva sua consulta no editor
- Clique no botão Executar (▶) ou pressione
⌘ + R - Visualize os resultados no painel de resultados
- Verifique as informações de execução na barra de status
Execução Parcial de Consultas
Você pode executar apenas parte de uma consulta:
- Selecione o texto que deseja executar
- Clique com o botão direito e escolha "Executar Seleção"
- Ou use o atalho de teclado
⌘ + Shift + R
Resultados da Execução
Após executar uma consulta, você verá:
- Grade de Resultados: Dados exibidos em uma tabela classificável e filtrável
- Contagem de Linhas: Número total de linhas retornadas
- Tempo de Execução: Quanto tempo a consulta levou para executar
- Mensagens: Quaisquer mensagens do PostgreSQL (especialmente para consultas DML)
Filtrando Dados com WHERE
Cláusula WHERE Básica
SELECT * FROM products WHERE price > 100;
Múltiplas Condições
SELECT * FROM orders
WHERE status = 'shipped'
AND order_date >= '2024-01-01';
Correspondência de Padrões com LIKE
SELECT * FROM customers
WHERE email LIKE '%@gmail.com';
SELECT * FROM products
WHERE name LIKE 'Pro%';
Valores NULL
-- Encontrar linhas onde email é NULL
SELECT * FROM users WHERE email IS NULL;
-- Encontrar linhas onde email NÃO é NULL
SELECT * FROM users WHERE email IS NOT NULL;
Ordenando Resultados com ORDER BY
Ordem Ascendente (Padrão)
SELECT * FROM products ORDER BY price;
Ordem Descendente
SELECT * FROM products ORDER BY price DESC;
Múltiplas Colunas de Ordenação
SELECT * FROM employees
ORDER BY department, last_name, first_name;
Trabalhando com Resultados
Visualizando Resultados
- Rolar: Navegue pelos resultados com mouse ou teclado
- Ordenar: Clique nos cabeçalhos das colunas para ordenar ascendente/descendente
- Filtrar: Clique com o botão direito nos cabeçalhos das colunas para filtrar valores
- Redimensionar: Arraste as bordas das colunas para ajustar a largura
- Reordenar: Arraste os cabeçalhos das colunas para reorganizar as colunas
Operações de Célula
- Copiar Célula: Clique duas vezes em uma célula ou pressione
⌘ + C - Editar Célula: Clique duas vezes e edite (apenas para alterações locais)
- Visualizar Conteúdo Completo: Passe o mouse sobre células truncadas para ver a dica de ferramenta
Exportando Resultados
- Clique no botão Exportar na barra de ferramentas
- Escolha o formato: CSV ou JSON
- Selecione o destino: Salvar em arquivo ou copiar para a área de transferência
- Configure as opções: Delimitadores, codificação, cabeçalhos
Salvando e Organizando Consultas
Salvando Consultas
- Clique em Salvar (
⌘ + S) ou no ícone de salvar - Escolha o local: Arquivo local ou biblioteca do HarborDB
- Adicione metadados: Nome, descrição, tags
Biblioteca de Consultas
Organize consultas salvas em pastas:
- Favoritos: Marque consultas usadas frequentemente
- Recentes: Rastreia automaticamente consultas usadas recentemente
- Tags: Categorize consultas com tags personalizadas
Modelos de Consulta
Crie modelos reutilizáveis para consultas comuns:
-- Modelo: Encontrar usuários inativos
SELECT user_id, email, last_login
FROM users
WHERE last_login < CURRENT_DATE - INTERVAL '90 days'
AND active = true;
Padrões Comuns de Consulta
Contando Registros
SELECT COUNT(*) FROM users;
SELECT COUNT(DISTINCT country) FROM customers;
Agregando Dados
SELECT
category,
COUNT(*) as product_count,
AVG(price) as avg_price,
MIN(price) as min_price,
MAX(price) as max_price
FROM products
GROUP BY category;
Consultas de Data/Hora
-- Pedidos de hoje
SELECT * FROM orders WHERE order_date = CURRENT_DATE;
-- Últimos 7 dias
SELECT * FROM logs
WHERE log_date >= CURRENT_DATE - INTERVAL '7 days';
-- Por mês
SELECT
EXTRACT(MONTH FROM order_date) as month,
COUNT(*) as order_count
FROM orders
GROUP BY EXTRACT(MONTH FROM order_date)
ORDER BY month;
Juntando Tabelas
SELECT
o.order_id,
o.order_date,
c.first_name,
c.last_name,
c.email
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
WHERE o.status = 'completed';
Melhores Práticas
1. Comece com SELECT *
Ao explorar uma nova tabela, use SELECT * para ver todas as colunas, depois refine para colunas específicas.
2. Use LIMIT
Sempre use LIMIT ao consultar tabelas desconhecidas para evitar resultados esmagadores.
3. Formate Suas Consultas
Use formatação consistente para melhor legibilidade:
- Palavras-chave em maiúsculas
- Indentação para consultas complexas
- Quebras de linha para cláusulas longas
4. Comente Seu Código
Adicione comentários para consultas complexas:
-- Calcular receita mensal por categoria de produto
-- Excluindo pedidos reembolsados e contas de teste
SELECT
DATE_TRUNC('month', order_date) as month,
category,
SUM(amount) as total_revenue
FROM orders
WHERE status != 'refunded'
AND customer_id NOT IN (SELECT customer_id FROM test_accounts)
GROUP BY DATE_TRUNC('month', order_date), category
ORDER BY month DESC, total_revenue DESC;
5. Teste com WHERE 1=0
Para ver a estrutura das colunas sem buscar dados:
SELECT * FROM large_table WHERE 1=0;
Solução de Problemas Comuns
"Relação não existe"
- Verifique a ortografia do nome da tabela e a sensibilidade a maiúsculas/minúsculas
- Verifique se você está conectado ao banco de dados correto
- Certifique-se de que tem as permissões apropriadas
"Coluna não existe"
- Verifique os nomes das colunas na cláusula SELECT
- Verifique erros de digitação
- Use
SELECT *para ver todas as colunas disponíveis primeiro
"Consultas Lentas"
- Adicione
LIMITpara testar o desempenho - Verifique índices ausentes
- Use
EXPLAINpara analisar o plano de consulta - Considere fatores de desempenho do lado do servidor
"Erros de Conexão"
- Verifique se a conexão está ativa
- Verifique a conectividade da rede
- Confirme se o servidor PostgreSQL está em execução
Próximos Passos
Agora que você entende os fundamentos das consultas:
- Pratique com suas próprias tabelas de banco de dados
- Explore o guia Técnicas Avançadas de Consultas
- Aprenda sobre Exportação de Dados
- Experimente técnicas de Otimização de Desempenho
Referência Rápida
Cláusulas SQL Essenciais
SELECT- Escolha colunas para retornarFROM- Especifique a tabela para consultarWHERE- Filtre linhasORDER BY- Ordene resultadosLIMIT- Restrinja o número de linhasGROUP BY- Agregue dadosHAVING- Filtre dados agregados
Funções Comuns
COUNT()- Conte linhasSUM()- Some valoresAVG()- Calcule a média dos valoresMIN()/MAX()- Encontre valores extremosCOALESCE()- Lide com valores NULLCONCAT()- Combine stringsEXTRACT()- Obtenha partes de data
Isso foi útil?
Ajude-nos a melhorar esta documentação fornecendo feedback.