我是新的续集(和整个开发),但相处。
我试图在一个消息聊天应用程序中进行查询,该应用程序可以提取所有最近的会话线程(每个消息都有1条消息),在sequelize中这样做:
const messages = await db.Message.findAll({
group: ['userId'],
attributes: ['userId', [db.sequelize.fn('MAX', db.sequelize.col('createdAt')), 'lastMessageTime']],
order: [[db.sequelize.fn('MAX', db.sequelize.col('createdAt')), 'DESC']],
limit: 30,
这会对最新消息进行正确分组,但我希望在它们旁边添加一个额外的属性,例如发件人的ID。但是,如果我在属性中添加它,我会收到此错误:
错误:GraphQL错误:列" message.senderId"必须出现在GROUP BY子句中或用于聚合函数
我一直在阅读如何包含相关模型,但我似乎无法包含相同的模型本身。有没有人对此有任何建议或想法?
非常感谢!