Ferramentas baseadas em SQL
1. Beekeeper Studio
O Beekeeper Studio é um editor SQL e gerenciador de banco de dados open source que oferece uma interface simples, mas poderosa, para consultar bancos de dados SQL. Ele suporta vários bancos de dados, como MySQL, PostgreSQL, SQLite e outros.
Exemplo de consulta: obtendo dados de funcionários
Veja como você pode usar o Beekeeper Studio para consultar dados de funcionários em um banco de dados PostgreSQL:
SELECT employee_id, first_name, last_name, department
FROM employees
WHERE department = 'Engineering'
ORDER BY last_name;
Resultado esperado:
| employee_id | first_name | last_name | department |
|---|---|---|---|
| 103 | Jane | Doe | Engineering |
| 105 | John | Smith | Engineering |
| 110 | Alice | Johnson | Engineering |
Esta consulta SQL seleciona os detalhes dos funcionários da tabela employees em que department é ‘Engineering’ e ordena os resultados por last_name.
2. DBeaver
O DBeaver é uma ferramenta universal de gerenciamento de banco de dados que suporta uma ampla variedade de bancos, incluindo SQL e NoSQL. Ele oferece um editor SQL completo com autocompletar, destaque de sintaxe e histórico de execução.
Exemplo de consulta: agregando dados de vendas
Usando o DBeaver conectado a um banco de dados MySQL, você pode executar funções de agregação assim:
SELECT product_id, SUM(quantity) AS total_quantity, SUM(price * quantity) AS total_sales
FROM sales
GROUP BY product_id
ORDER BY total_sales DESC;
Resultado esperado:
| product_id | total_quantity | total_sales |
|---|---|---|
| P1001 | 500 | 7500.00 |
| P1005 | 320 | 6400.00 |
| P1003 | 250 | 5000.00 |
Esta consulta agrega os dados de vendas por product_id, calculando a quantidade total vendida e o valor total das vendas. Os resultados são ordenados por total_sales em ordem decrescente.
3. SQL Workbench/J
O SQL Workbench/J é uma ferramenta de consulta SQL gratuita e multiplataforma, compatível com a maioria dos bancos de dados baseados em SQL. Ele oferece amplos recursos de edição de scripts SQL, manipulação de conjuntos de resultados e opções de exportação.
Exemplo de consulta: atualizando informações de produtos
Um exemplo de uso do SQL Workbench/J para atualizar uma tabela em um banco de dados PostgreSQL:
UPDATE products
SET price = price * 1.10
WHERE category = 'Electronics';
Resultado esperado:
Query OK, 5 rows affected
Esta consulta modifica a tabela products, aplicando um aumento de 10% no preço dos itens da categoria ‘Electronics’ com a instrução UPDATE.
Ferramentas de consulta NoSQL
1. MongoDB Compass
O MongoDB Compass é uma GUI para MongoDB que permite explorar e interagir com seus dados sem escrever muito código. Ele oferece um ambiente visual para consultas no MongoDB.
Exemplo de consulta: filtrando documentos
Usando o MongoDB Compass para encontrar documentos em uma coleção customers:
{
"age": { "$gt": 30 },
"subscription_status": "active"
}
Resultado esperado
[
{
"_id": "60b8d75d8e3f4a6c4e000001",
"name": "Alice Johnson",
"age": 35,
"subscription_status": "active"
},
{
"_id": "60b8d75d8e3f4a6c4e000002",
"name": "Bob Smith",
"age": 45,
"subscription_status": "active"
}
]
Esta consulta filtra os documentos da coleção customers em que age é maior que 30 e subscription_status é ‘active’.
2. Couchbase Query Workbench
O Couchbase Query Workbench oferece uma interface para executar consultas N1QL (semelhantes a SQL) em dados do Couchbase. Ele foi projetado para lidar com documentos JSON de forma semelhante ao SQL.
Exemplo de consulta: selecionando campos aninhados
SELECT name, address.city
FROM customers
WHERE address.state = 'CA';
Resultado esperado:
| name | city |
|---|---|
| Alice Johnson | San Diego |
| Bob Smith | Los Angeles |
Esta consulta N1QL seleciona name e o campo aninhado city do objeto address nos documentos customers em que state é ‘CA’.
APIs e query builders
1. GraphQL
O GraphQL é uma linguagem de consulta para APIs que permite solicitar dados de forma flexível. Ele permite que os clientes solicitem campos específicos ao servidor.
Exemplo de consulta: buscando dados aninhados
{
employee(id: "103") {
firstName
lastName
department {
name
location
}
}
}
Resultado esperado:
{
"data": {
"employee": {
"firstName": "Jane",
"lastName": "Doe",
"department": {
"name": "Engineering",
"location": "New York"
}
}
}
}
Esta consulta GraphQL solicita campos específicos (firstName, lastName, department.name e department.location) do funcionário com id: 103.
2. ORMs (Object-Relational Mappers)
ORMs como Active Record (para Ruby on Rails), Sequelize (para Node.js) e Django ORM (para Python) oferecem uma forma de consultar bancos de dados usando código em vez de SQL puro. Isso é útil ao integrar consultas ao banco diretamente em uma aplicação.
Exemplo de consulta: usando Sequelize no Node.js
const employees = await Employee.findAll({
where: {
department: 'Engineering'
},
order: [['lastName', 'ASC']]
});
Resultado esperado:
Um array de objetos JavaScript representando os funcionários do departamento ‘Engineering’:
[
{ "employee_id": 103, "first_name": "Jane", "last_name": "Doe", "department": "Engineering" },
{ "employee_id": 105, "first_name": "John", "last_name": "Smith", "department": "Engineering" }
]
O ORM converte automaticamente o código JavaScript em uma consulta SQL que busca e ordena os dados dos funcionários no banco de dados.
Conclusão
Diferentes ferramentas de consulta de dados atendem a propósitos variados, dependendo do tipo de banco de dados (SQL ou NoSQL) e das necessidades específicas do usuário. Ferramentas baseadas em SQL, como Beekeeper Studio, DBeaver e SQL Workbench/J, se destacam no tratamento de dados estruturados. Ferramentas NoSQL, como MongoDB Compass e Couchbase Query Workbench, trazem flexibilidade para consultar dados não estruturados. APIs como GraphQL e ORMs oferecem formas programáticas de interagir com bancos de dados em aplicações modernas.
- As 5 melhores GUIs gratuitas e open source para MySQL em 2024
- As 5 melhores GUIs gratuitas e open source para PostgreSQL em 2024
Beekeeper Studio é um cliente de banco de dados gratuito e open source
A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit
O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.
O que os usuários dizem sobre o Beekeeper Studio
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e torna o trabalho com bancos de dados prazeroso de novo."
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."