我在 pg (postgresql) 中使用 "sequelize": "^2.0.0-rc3",此时我正在尝试使用日期范围进行原始查询,但 sequelize 不返回数据。
当我在 postgresql 数据库中运行相同的查询时,得到正确的结果。请帮助我。
在序列化中:
// Init main query
var query = "SELECT * FROM" + '"Calls"' +
" WHERE " + '"EquipmentId"' + " = 1" +
" AND " + '"initDate"' + " >= " + "'2015-02-05 14:40' " +
" AND " + '"endDate"' + " <= " + " '2015-02-05 15:00' ";
global.db.sequelize.query(query)
.then(function(calls) {
console.log(calls);
})
.error(function (err) {
console.log(err);
});
在我得到的 Node 服务器的控制台中。
Executing (default): SELECT * FROM "Calls" WHERE "EquipmentId" = 1 AND "initDate" >= '2015-02-05 14:40' AND "endDate" <= '2015-02-05 15:00'
但是空数组调用...
最佳答案
试试这个:
var query = ' \
SELECT * FROM "Calls" \
WHERE "EquipmentId" = :EquipmentId \
AND "initDate" >= :initDate \
AND "endDate" <= :endDate; \
';
global.db.sequelize.query(query, null, {raw: true}, {
EquipmentId: 1,
initDate: new Date('2015-02-05 14:40'),
endDate: new Date('2015-02-05 15:00')
})
.then(function(calls) {
console.log(calls);
})
.error(function (err) {
console.log(err);
});
关于node.js - Sequelize,原始查询按 daterange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28354810/