只获得协会的协会

我目前正在一个项目中,我有3个模型与儿童和父母的结构。

City有多个Location s有多个Stone s。 每块Stone只有一个Location作为父项,每个Location只有一个City作为父项。

现在,我想创build一个“属于”(通过Location )到特定City的所有Stones列表。 我将如何检索所有这些关联,而不必执行以下操作:

 City.find({ where: { id: 1337 }, include: [{ model: Location, include: [{ model: Stone }] }] }) .then((city) => { city.stones = [].concat.apply([], city.locations.map(location => location.stones)); }); 

我试图找出是否有一个“只有SQL”的解决scheme,所以不检索数据/不得不执行JavaScript来产生这个数组。