#javascript #mysql #orm #sequelize.js
#javascript #mysql #orm #sequelize.js
Вопрос:
Я новичок в использовании ORM (Sequelize с MySQL) и не могу разобраться в реализации этого запроса:
SELECT
people.*
FROM people
INNER JOIN people_tags ON people.person_id = people_tags.person_id
WHERE people_tags.tag_id = 14"
Я ищу людей на основе tag_id.
Модели определены правильно, я могу получить атрибут тегов, прикрепленный к ответу пользователя.
Вот что я попробовал:
Person.findAll({
include: {
model: db.tag,
required: true,
where: {
person_id: db.Sequelize.col('person.person_id')
}
},
})
.then(data => {
res.send(data);
})
.catch(err => {
res.status(500).send({
message: err
});
});
Комментарии:
1. Разве не
where: { person_id: db.Sequelize.col('person.person_id') }
должно бытьwhere: { person_id: 14 }
?2. @Anatoly Очевидно, что нет, поскольку 14 использовался в качестве примера для запроса.