【发布时间】:2016-03-08 21:19:16
【问题描述】:
我需要为表中每个明确命名的项目获取最低值。例如,对于下表:
books
id| name
1 | math
2 | chem
3 | chem
4 | chem
5 | math
listings
id|bookID|price
1 | 1 | 4.35
2 | 2 | 2.54
3 | 3 | 1.57
4 | 4 | 4.91
5 | 5 | 7.22
我的查询结果应该返回:
name | price
math | 4.35
chem | 1.57
对此的 SQL 查询将是
SELECT b.name, MIN(l.price)
FROM Book b, Listing l
WHERE b.id = l.bookId
GROUP BY b.name;
我在尝试创建一个执行相同操作的 sequelize 查询时遇到了麻烦……到目前为止,我得到了这个:
models.Listing.aggregate('book.name', 'models.Listing.min(price)', {
distinct: true,
include: [
{ model: models.Book, as: 'book' }
]
}
【问题讨论】:
-
当你这样做时会发生什么?
-
这会导致 404,但实际上只是放在一起......我对如何在 sequelized 中构造查询还没有很好的理解。
标签: sql postgresql distinct sequelize.js