我花了很多时间来弄清楚OR子句在风帆中工作没有成功。
我正在使用Sails-MySql适配器。
你们有没有做过这样的事情吗?我将不胜感激。
基本上这就是我想要做的事情:
对一组字段执行OR子句以及在另一组字段上执行AND。
这样的事情:
FdbDevice
.find()
.where(or:
[
{ deviceCategory: “cardiology valve bioprosthesis” },
{ deviceCategory: “nephrology haemodialysis catheter” }
]
})
.where(
{ catalogNumber : “Z286004” },
{ modelNumber: “Z286004” }
)
.exec
答案 0 :(得分:2)
在这种特殊情况下,我会这样做:
// Each element in the array is treated as 'or'
var possibleDeviceCategories = [
'cardiology valve bioprosthesis',
'nephrology haemodialysis catheter'
];
FdbDevice
.find({
deviceCategory: possibleDeviceCategories,
catalogNumber: 'Z286004',
modelNumber: 'Z286004'
})
.exec(cb);
查看the docs以获取有关Waterline查询语言的更多信息。
答案 1 :(得分:1)
你可以尝试这样的东西,进入发现:
FdbDevice
.find({or:
[
{ deviceCategory: “cardiology valve bioprosthesis” },
{ deviceCategory: “nephrology haemodialysis catheter” }
]
})
.where(
{ catalogNumber : “Z286004” },
{ modelNumber: “Z286004” }
)