Как получить данные с лимитом
Есть мой рабочий запрос к базе данных, его я покажу ниже, собственно проблема такая: как мне добавить limit и offset к моему запросу? рабочий запрос :
const vinyls = await this.vinylRepository.findAll({
include: [
{
model: Review,
as: 'reviews',
attributes: [],
},
],
attributes: {
include: [
[Sequelize.fn('AVG', Sequelize.col('reviews.review')), 'avgRating'],
],
},
raw: true,
group: ['Vinyl.id'],
});
Этот запрос отдаёт мне все данные без ошибок. Но если же я добавляю offset/limit вот так , будет ошибка :
const limit = 10;
const offset = 10;
const vinyls = await this.vinylRepository.findAll({
include: [
{
model: Review,
as: 'reviews',
attributes: [],
},
],
attributes: {
include: [
[Sequelize.fn('AVG', Sequelize.col('reviews.review')), 'avgRating'],
],
},
raw: true,
group: ['Vinyl.id'],
limit,
offset
});
Ошибка :
[Nest] 25428 - 04/28/2024, 9:36:11 PM ERROR [ExceptionsHandler] Unknown column 'reviews.review' in 'field list' Error: at Query.run (G:\React\internship_of_leverx\final\node_modules\sequelize\src\dialects\mysql\query.js:46:25)
nestjs/mysql/sequelize
Ответы (1 шт):
Автор решения: PashaFromBY
→ Ссылка
const vinyls = await this.vinylRepository.findAll({
subQuery: false,
include: [
{
model: Review,
as: 'reviews',
attributes: [],
},
],
attributes: {
include: [
[Sequelize.fn('AVG', Sequelize.col('reviews.review')), 'avgRating'],
],
},
raw: true,
limit,
offset,
group: ['Vinyl.id'],
});