Crea consultas SQL mediante código, sin escribir SQL puro.
Una query (consulta) es una instrucción para recuperar, insertar, actualizar o eliminar datos de una base de datos. Los query builders permiten construir consultas SQL de forma programática. Tipos de queries: - SELECT: Leer datos - INSERT: Crear registros - UPDATE: Modificar registros - DELETE: Eliminar registros Los query builders ofrecen una API fluida para construir queries complejas manteniendo type safety y evitando SQL injection.
// Query Builder con Prisma const posts = await prisma.post.findMany({ where: { AND: [ { published: true }, { OR: [ { title: { contains: 'JavaScript' } }, { tags: { some: { name: 'frontend' } } } ] } ] }, select: { id: true, title: true, author: { select: { name: true } } }, orderBy: { createdAt: 'desc' }, take: 10, skip: 0 }); // Query Builder con Knex.js const users = await knex('users') .select('id', 'name', 'email') .where('active', true) .andWhere('role', 'admin') .orderBy('created_at', 'desc') .limit(10); // Raw query cuando necesitas SQL puro const result = await prisma.$queryRaw` SELECT DATE_TRUNC('month', created_at) as month, COUNT(*) as total FROM posts WHERE published = true GROUP BY month ORDER BY month DESC `;