在哪里查询"内部关系"搜索到的对象

时间:2014-10-31 16:58:48

标签: node.js sequelize.js

我想使用sequelize来生成简单的查询,有点:

SELECT * FROM `Products`
WHERE `Product`.`oldPrice` > `Product`.`newPrice`

目前我做了一些丑陋的原始查询,例如:

database.Product.find({ where: '`Product`.`oldPrice` > `Product`.`newPrice`' })

这不是一个非常糟糕的练习或者其他什么,但我想知道我是否没有错过文档中的一个段落,它会向我介绍一个更清晰的形式,例如mongo函数表达式(参见:http://mongoosejs.com/docs/api.html#query_Query-%24where)。

database.Product.find({ where: function () {
    return (this.oldPrice > this.newPrice);
});

是否有这样的快捷方式,或者在这种情况下我是否必须继续编写SQL?

提前致谢。

1 个答案:

答案 0 :(得分:0)

Product.find({
    where: {
        oldPrice: {
            gt: sequelize.col('newPrice')
        }
    }
});