I am trying to query with multiple joins, but what happens is if I add conditions to the where I get the prisma version as response. For example the following query works
const products = await prisma.products.findMany({
where: {
is_enable: true,
is_deleted: false,
},
include: {
items: {
where: {
is_deleted: false
},
include: {
parts: {
include: {
subvehicles: {
include: {
vehicles: {
include: {
manufacturers: true
}
}
}
}
}
}
}
}
},
skip: replacements.offset,
take: replacements.limit,
});
But if I add a condition (the condition does not matter, but if I add the condition the behaviour changes)
const products = await prisma.products.findMany({
where: {
is_enable: true,
is_deleted: false,
},
include: {
items: {
where: {
is_deleted: false
},
include: {
parts: {
where: {
is_deleted: false,
},
include: {
subvehicles: {
include: {
vehicles: {
include: {
manufacturers: true
}
}
}
}
}
}
}
}
},
skip: replacements.offset,
take: replacements.limit,
});
I get
{
"clientVersion": "3.6.0"
}
UPDATE
In the first case the generated query is
prisma:client Prisma Client call: +1s
prisma:client prisma.products.findMany({
prisma:client where: {
prisma:client is_enable: true,
prisma:client is_deleted: false
prisma:client },
prisma:client include: {
prisma:client items: {
prisma:client where: {
prisma:client is_deleted: false
prisma:client },
prisma:client include: {
prisma:client parts: {
prisma:client include: {
prisma:client subvehicles: {
prisma:client include: {
prisma:client vehicles: {
prisma:client include: {
prisma:client manufacturers: true
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }) +1ms
prisma:client Generated request: +1ms
prisma:client query {
prisma:client findManyproducts(where: {
prisma:client is_enable: true
prisma:client is_deleted: false
prisma:client }) {
prisma:client id
prisma:client code
prisma:client description
prisma:client position
prisma:client is_enable
prisma:client category
prisma:client filename
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client items(where: {
prisma:client is_deleted: false
prisma:client }) {
prisma:client id
prisma:client part_id
prisma:client product_id
prisma:client quantity
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client parts {
prisma:client id
prisma:client subvehicle_id
prisma:client oem
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client subvehicles {
prisma:client id
prisma:client vehicle_id
prisma:client submodel
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client vehicles {
prisma:client id
prisma:client manufacturer_id
prisma:client model
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client manufacturers {
prisma:client id
prisma:client name
prisma:client position
prisma:client is_deleted
prisma:client creation_date
prisma:client last_modification_date
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client }
prisma:client +0ms
In the second case
prisma:client clientVersion: 3.6.0 +0ms
prisma:client clientEngineType: library +0ms