Sequelize.js 模型具有 manufacturedFrom 和 manufacturedTo 属性。如何获取特定年份生产的所有车型?
Sequelize.js model has manufacturedFrom and manufacturedTo properties. How to get all car models that were being manufactured during a specific year?
我有以下 Model/Table:
Table: models
Columns: name, manufacturedFrom, manufacturedTo
和一些示例记录:
5 Series 2010 2017
6 Series 2011 2018
X4 (F26) 2014 2018
现在假设我想获取 2018 年生产的所有型号。这意味着我只会获取这 2 个:
6 Series 2011 2018
X4 (F26) 2014 2018
现在我得到的所有模型都是这样的:
let Model = require('../models/Model')
module.exports.getModels = async (req, res, next) => {
let response = await Model.findAll()
res.status(200).json({
models: response
})
}
问题是我不太清楚应该使用哪种运算符来获取这些记录。我尝试了一些大于和小于的东西,但我不太成功。
只需像这样使用 [Op.gte] 和 [Op.lte]:
const year = '2018';
let response = await Model.findAll({
where: {
manufacturedFrom: {
[Op.lte]: year
},
manufacturedTo: {
[Op.gte]: year
}
}
})
我有以下 Model/Table:
Table: models
Columns: name, manufacturedFrom, manufacturedTo
和一些示例记录:
5 Series 2010 2017
6 Series 2011 2018
X4 (F26) 2014 2018
现在假设我想获取 2018 年生产的所有型号。这意味着我只会获取这 2 个:
6 Series 2011 2018
X4 (F26) 2014 2018
现在我得到的所有模型都是这样的:
let Model = require('../models/Model')
module.exports.getModels = async (req, res, next) => {
let response = await Model.findAll()
res.status(200).json({
models: response
})
}
问题是我不太清楚应该使用哪种运算符来获取这些记录。我尝试了一些大于和小于的东西,但我不太成功。
只需像这样使用 [Op.gte] 和 [Op.lte]:
const year = '2018';
let response = await Model.findAll({
where: {
manufacturedFrom: {
[Op.lte]: year
},
manufacturedTo: {
[Op.gte]: year
}
}
})