Sequelize hasOne включает не работает должным образом

Я пытаюсь включить hasOne Ассоциация с findAll метод как ниже

await db.Symbol.findAll({
    where:{
        symbol: symbols
    },
    attributes: ['symbol'],
    include: [{
        as: 'price',
        model: db.Price,
        attributes: ['adjClose', 'createdAt']
    }]
});

но я получил неправильный результат, потому что продолжение дает мне результат, как показано ниже.

{ 
  symbol: 'SNAP',
  price: { adjClose: 22.07, createdAt: 2017-03-10T00:00:00.000Z } 
},
{ 
  symbol: 'SNAP',
  price: { adjClose: 22.709999, createdAt: 2017-03-09T00:00:00.000Z } 
}

но мне нужен только один объект, потому что я включил свою ассоциацию hasOne как price и мне не нужны дублированные значения моего объекта 'symbol'.

мой hasOne Ассоциация выглядит так

Symbol.hasOne(models.Price,{
    as: "price",
    foreignKey:"companyId"
});

Есть ли способ выбрать только один элемент с помощью include? Мне просто нужно ограничить подзапрос, который, как мне кажется, может помочь, но, как я знаю, к сожалению, sequelize не поддерживает его.

Надеюсь, кто-нибудь может мне помочь. Заранее спасибо!

0 ответов

Другие вопросы по тегам