在我的数据库中,有以下相关表:users
,listings
和reviews
users
有很多listings
listings
有很多reviews
reviews
具有一列value
,该列是介于0到5之间的一个浮点数。
我希望能够为用户提供一个评分,定义为:
用户拥有的value
中所有reviews
的平均listings
。
在Sequelize中,我有这个:
User.findById(userId, {
include: [
{
model: Listing,
order: [
[Review, 'updatedAt', 'desc']
],
include: [
{
model: Review,
include: [User]
}
],
}
]
})
这成功地吸引了我
user
字段listings
reviews
的所有listings
这时我确实有足够的信息来计算user
的平均评分,但前提是我在此查询中从未对listings
或reviews
的数量设置任何限制。为了扩展应用程序,我需要限制,因此我必须能够使用聚合函数来计算listing
和user
的平均评分。
我一般来说对Sequelize和SQL还是陌生的。我该怎么办?