Sobes.tech
Junior — Middle

Já criou consultas SQL complexas com múltiplas condições e joins?

sobes.tech IA

Resposta da IA

Sim, na minha experiência, criei consultas SQL complexas com múltiplas condições e joins. Essas consultas são frequentemente usadas para obter dados agregados de várias tabelas, filtrar por diferentes parâmetros e otimizar a recuperação.

Por exemplo, em Node.js, usando a biblioteca knex, é possível construir uma consulta com vários joins e condições:

const knex = require('knex')({client: 'pg'});

const query = knex('orders')
  .join('customers', 'orders.customer_id', 'customers.id')
  .leftJoin('payments', 'orders.id', 'payments.order_id')
  .where('orders.status', 'completed')
  .andWhere('payments.amount', '>', 100)
  .select('orders.id', 'customers.name', 'payments.amount')
  .toString();

console.log(query);

Este tipo de consulta permite obter pedidos com o estado "completed", onde o valor do pagamento é superior a 100, combinando dados das tabelas de pedidos, clientes e pagamentos.

Em projetos reais, é importante monitorar o desempenho dessas consultas e, se necessário, otimizá-las usando índices e análise do plano de execução.