Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

194
Vistas
Realización de consultas de duelo en cliente prisma

Actualmente me pregunto si es posible obtener datos de más de una tabla en una sola consulta.

Tenemos una tabla de miembros del equipo y una tabla de usuarios. Queremos obtener información sobre cada usuario en la tabla teamMember y obtener los datos correspondientes de la tabla de usuarios.

¿Es posible hacerlo en una sola consulta? ¿O tendría que usar dos consultas findMany?

 const members = await prisma.teamMember.findMany({ where: { teamId, }, }); const membersInfo = []; members.map(async (e) => { const response = await prisma.user.findFirst({ where: { id: e.userId, }, }); if(response) membersInfo.push(response); });```
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Sí, puede consultar los datos del User mientras obtiene la información TeamMember .

Considere este ejemplo:

schema.prisma

 // This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema generator client { provider = "prisma-client-js" } datasource db { provider = "postgresql" url = env("DATABASE_URL") } model TeamMember { id Int @id @default(autoincrement()) team_id Int User User? @relation(fields: [userId], references: [id]) userId Int? } model User { id Int @id @default(autoincrement()) name String email String password String team TeamMember[] }

index.ts

 import { PrismaClient } from '@prisma/client'; const prisma = new PrismaClient({ log: ['query'], }); async function main() { await prisma.user.create({ data: { email: 'test@test.com', name: 'test', password: 'test', team: { create: { team_id: 1, }, }, }, }); console.log('Created user'); const teamWithUsers = await prisma.teamMember.findUnique({ where: { id: 1, }, include: { User: true, }, }); console.log('teamWithUsers', teamWithUsers); } main() .catch((e) => { throw e; }) .finally(async () => { await prisma.$disconnect(); });

Aquí está la respuesta:

 teamWithUsers { id: 1, team_id: 1, userId: 1, User: { id: 1, name: 'test', email: 'test@test.com', password: 'test' } }

De forma predeterminada, los campos de relación no se recuperan, si necesita obtener los datos de los campos de relación en ese caso, deberá especificar la cláusula de inclusión como se muestra en el ejemplo anterior.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda