Single Operations
findOne()​
Only use the Query Engine's findOne if the Entity Service findOne can't cover your use case.
Finds the first entry matching the parameters.
Syntax: findOne(parameters) ⇒ Entry
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
where | WhereParameter | Filters to use |
offset | Integer | Number of entries to skip |
orderBy | OrderByParameter | Order definition |
populate | PopulateParameter | Relations to populate |
Example​
const entry = await strapi.db.query('api::blog.article').findOne({
select: ['title', 'description'],
where: { title: 'Hello World' },
populate: { category: true },
});
findMany()​
Only use the Query Engine's findMany if the Entity Service findMany can't cover your use case.
Finds entries matching the parameters.
Syntax: findMany(parameters) ⇒ Entry[]
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
where | WhereParameter | Filters to use |
limit | Integer | Number of entries to return |
offset | Integer | Number of entries to skip |
orderBy | OrderByParameter | Order definition |
populate | PopulateParameter | Relations to populate |
Example​
const entries = await strapi.db.query('api::blog.article').findMany({
select: ['title', 'description'],
where: { title: 'Hello World' },
orderBy: { publishedAt: 'DESC' },
populate: { category: true },
});
findWithCount()​
Finds and counts entries matching the parameters.
Syntax: findWithCount(parameters) [Entry[], number]
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
where | WhereParameter | Filters to use |
limit | Integer | Number of entries to return |
offset | Integer | Number of entries to skip |
orderBy | OrderByParameter | Order definition |
populate | PopulateParameter | Relations to populate |
Example​
const [entries, count] = await strapi.db.query('api::blog.article').findWithCount({
select: ['title', 'description'],
where: { title: 'Hello World' },
orderBy: { title: 'DESC' },
populate: { category: true },
});
create()​
Only use the Query Engine's create if the Entity Service create can't cover your use case.
Creates one entry and returns it.
Syntax: create(parameters) Entry
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
populate | PopulateParameter | Relations to populate |
data | Object | Input data |
Example​
const entry = await strapi.db.query('api::blog.article').create({
data: {
title: 'My Article',
},
});
update()​
Only use the Query Engine's update if the Entity Service update can't cover your use case.
Updates one entry and returns it.
Syntax: update(parameters) Entry
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
populate | PopulateParameter | Relations to populate |
where | WhereParameter | Filters to use |
data | Object | Input data |
Example​
const entry = await strapi.db.query('api::blog.article').update({
where: { id: 1 },
data: {
title: 'xxx',
},
});
delete()​
Only use the Query Engine's delete if the Entity Service delete can't cover your use case.
Deletes one entry and returns it.
Syntax: delete(parameters) Entry
Parameters​
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
populate | PopulateParameter | Relations to populate |
where | WhereParameter | Filters to use |
Example​
const entry = await strapi.db.query('api::blog.article').delete({
where: { id: 1 },
});