SELECT "count"(DISTINCT("displayedCandidates"))
from
(SELECT unnest("displayedCandidates") "displayedCandidates" FROM roles)
"displayedCandidates"
这里“ displayedCandidates”列是包含相关候选ID的字符串数组类型。我要查询的是显示的候选对象的不重复计数。此sql查询正常工作。
答案 0 :(得分:-1)
尝试一下:
return model.findAll({
attributes: ['candidateId', 'displayedCandidates'],
where: {
candidateId: {
[Op.in]: sequelize.literal('(SELECT unnest("displayedCandidates") as
"displayedCandidates" FROM "Roles" WHERE "candidateId" ='+ '\'' + candidateId + '\')'
)
}
}
})
.then((model) => {
console.log(model);
})
.catch((err) => {
console.log(err);
});
阅读文档,这可能会对您有所帮助。