0

I am using Sequelize v6 with the mariadb dialect.

I have query that looks like this:

db.RunVersion.findAll({
  include: [{
      model: db.Run,
      include: [{
         as: "Watchers",
         model: db.RunWatchers,
         required: true,
         where: {id: user.id}
      }],
   }],
   where: where
}]

This produces a WHERE clause that looks like this:

FROM RunVersions AS RunVersion
LEFT OUTER JOIN (Runs AS Run
INNER JOIN RunWatchers AS Runs->Watchers ON Run.id = Run->Watchers.wid
AND Run->Watchers.un = 'mrprice') ON RrunVersion.rid = Run.id

This returns bad results. I expect the WHERE clause to look like this:

FROM RunVersions AS RunVersion
LEFT OUTER JOIN Runs AS Run ON RunVersion.rid = Run.id
INNER JOIN RunWatchers AS Run->Watchers ON Run.id = Run->Watchers.wid AND Run-Watchers.unname = 'mrprice' 

Any ideas why this is happening?

CycleGeek
  • 473
  • 2
  • 6
  • 14

0 Answers0