我得到了以下sequelize查詢片段,其中我喜歡做的多notLike查詢:多notLike不需額外工作
article
.findAndCountAll({
where: {
NAME: {
$like: '%'+req.body.search+'%'
},
ITEM_NUMBER: {
$notLike: 'MF%',
$notLike: 'OLS%',
$notLike: 'MV%',
$notLike: 'MD%',
$notLike: 'AE%'
},
PRICE: {
$gt: 0
},
BLOCKED_FROM: {
$or: {
$gt: new Date(),
$eq: null
}
}
},
limit: 20
})
.then(function(result) {
res.json(result.rows);
//res.json(result.count);
console.log(result.count);
console.log(result.rows);
});
的問題是,對於地方部分ITEM_NUMBER僅接縫搭末notLike線($ notLike:'AE%')。由此產生的查詢輸出顯示:
SELECT TOP 20 [NAME], [ITEM_NUMBER], [PRICE], [BLOCKED_FROM] FROM [ARTIKEL] AS [ARTIKEL] WHERE [ARTIKEL].[NAME] LIKE N'%testname%' AND [ARTIKEL].[ITEM_NUMBER] NOT LIKE N'AE%' AND [ARTIKEL].[PRICE] > 0 AND ([ARTIKEL].[BLOCKED_FROM] > N'2016-12-28 17:05:58.750' OR [ARTIKEL].[BLOCKED_FROM] IS NULL);
查詢應該包含所有%notLike參數。任何想法有什麼不對? THX 英戈
這很有趣。有用。在操作員或操作員之後,我已經嘗試過沒有啓動括號。我只拿了大括號,如[組合章節](http://docs.sequelizejs.com/en/v3/docs/querying/)中的文檔所示,其中第一個或運算符示例沒有方括號。 .Thx爲此! – Inge
很高興幫助@Inge –