为避免性能问题,不允许对关系进行批量操作。
createMany()
创建多个条目。
语法:createMany(parameters) => { count: number, ids: id[] }
参数
参数 | 类型 | 说明 |
---|---|---|
data | 对象数组 | 输入数据数组 |
- MySQL 将仅返回包含最后插入的 id 的一个 id 数组,而不是整个列表。
- 在 Strapi v4.9.0 之前,
createMany()
仅返回count
。
示例
js
await strapi.db.query('api::blog.article').createMany({
data: [
{
title: 'ABCD',
},
{
title: 'EFGH',
},
],
})
// { count: 2 , ids: [1,2]}
updateMany()
更新与参数匹配的多个条目。
Syntax: updateMany(parameters) => { count: number }
Parameters
Parameter | Type | Description |
---|---|---|
where | WhereParameter | Filters to use |
data | Object | Input data |
Example
js
await strapi.db.query('api::shop.article').updateMany({
where: {
price: 20,
},
data: {
price: 18,
},
})
// { count: 42 }
deleteMany()
删除多个符合参数的条目。
Syntax: deleteMany(parameters) => { count: number }
Parameters
Parameter | Type | Description |
---|---|---|
where | WhereParameter | Filters to use |
Example
js
await strapi.db.query('api::blog.article').deleteMany({
where: {
title: {
$startsWith: 'v3',
},
},
})
// { count: 42 }
Aggregations
count()
计算与参数匹配的条目数。
Syntax: count(parameters) => number
Parameters
Parameter | Type | Description |
---|---|---|
where | WhereParameter | Filters to use |
js
const count = await strapi.db.query('api::blog.article').count({
where: {
title: {
$startsWith: 'v3',
},
},
})
// 12