How To Translate Mysql Query To Sequelize Orm
I need to perform this multiple LEFT JOIN query with sequelize: SELECT movie, genre FROM `yt_movies` M LEFT JOIN `genres_link` GL ON M.id = GL.movie_id LEFT JOIN `genres` G ON GL.
Solution 1:
To join A->B->C, you should nest the include for C inside the include for B, e.g.
A.findAll({
include: [
{
model: B,
include: [
{model: C}
]
}
]
})
But, if table genres_link has no attributes other than PKs of movie and genre, then use through.
YtMovies.belongsToMany(Genres, {through: GenresLink, foreignKey: 'movie_id' });
Genres.belongsToMany (YtMovies,{through: GenresLink, foreignKey: 'genre_id '});
YtMovies.findAll({
include: [
{
model: Genres,
required : true,
through: GenresLink
}
]
});
The manual has some helpful info on this topic...
Post a Comment for "How To Translate Mysql Query To Sequelize Orm"