Sql 包含续集的列表中的列
如果我在Sql 包含续集的列表中的列,sql,join,sequelize.js,Sql,Join,Sequelize.js,如果我在sequelize return models.VehicleModel .findAll({ include: [ { attributes: ['id'], model: models.Unit }, {
sequelize
return models.VehicleModel
.findAll({
include: [
{
attributes: ['id'],
model: models.Unit
},
{
model: models.myPattern,
where: {
VehicleModelId: { $in: data.VehicleModelIds }
},
include: [
{
model: models.Calendar,
include: [
{
model: models.Restrictions,
include: [
{
model: models.RestrictionType
}],
where: {
//THIS IS THE LINE I NEED TO CHANGE SOMEHOW
UnitId: { $in: [models.Unit.id] }
},
required: false
}
]
}
]
}
],
where: {
id: { $in: data.VehicleModelIds }
}
})
这在查询中为我提供了NULL
,如下所示:
[myPattern.Calendar.Restrictions].UnitId IN (NULL) AND ....
我希望能够获得以下信息:
[myPattern.Calendar.Restrictions].UnitId IN (Units.id) AND ....
这是因为它们不是强制性的,但当然应该与相应车型的适当单元相连接
myPattern
链接到日历
,日历又链接到限制
和单位
。
这一切都使用id
列
任何帮助都将不胜感激 找到了它 因此,对于寻找“如何”的人来说:
//...
where: {
UnitId: { $in: [models.sequelize.literal('Units.id')] },
}
//...and so on
这将在查询中输出:[myPattern.Calendar.Restrictions].UnitId in(Units.id)