使用 Sequelize.not 时值为 "undefined"
Where value is "undefined" when using Sequelize.not
使用简单的 sequelize 查询,当使用如下 sequelize.not 函数时,我不断收到错误消息“无效值 { indefined: 0 }”
let total = await userDB.tblSMSSent.findOne({
attributes: [[sequelize.fn('COUNT', 'id'), 'numMessages']],
where: {
user: userName,
messageID: { [sequelize.not]: '0' }
}, logging: false
})
当我 运行 没有 'MessageID: { [sequelize.not]: 0 }' 过滤器的查询时,它工作正常(尽管结果不正确)。在这里如何正确使用sequelize.not函数?
在数据库中,messageId 列是 nchar(20)
您需要使用sequelize.Op.not
:
let total = await userDB.tblSMSSent.findOne({
attributes: [[sequelize.fn('COUNT', 'id'), 'numMessages']],
where: {
user: userName,
messageID: { [sequelize.Op.not]: '0' }
}, logging: false
})
使用简单的 sequelize 查询,当使用如下 sequelize.not 函数时,我不断收到错误消息“无效值 { indefined: 0 }”
let total = await userDB.tblSMSSent.findOne({
attributes: [[sequelize.fn('COUNT', 'id'), 'numMessages']],
where: {
user: userName,
messageID: { [sequelize.not]: '0' }
}, logging: false
})
当我 运行 没有 'MessageID: { [sequelize.not]: 0 }' 过滤器的查询时,它工作正常(尽管结果不正确)。在这里如何正确使用sequelize.not函数?
在数据库中,messageId 列是 nchar(20)
您需要使用sequelize.Op.not
:
let total = await userDB.tblSMSSent.findOne({
attributes: [[sequelize.fn('COUNT', 'id'), 'numMessages']],
where: {
user: userName,
messageID: { [sequelize.Op.not]: '0' }
}, logging: false
})