从 sql 服务器获取两个日期之间的数据
Get data between two date from sql server
我想使用 mssql 从 sql 服务器获取两个日期之间的所有数据,并在 nodejs 中查询 sequelize。
开始和结束日期来自 axios.post 的反应前端。
例如开始日期是 2021-01-04T08:53:00.000Z
结束日期是 2021-01-05T21:00:00.000Z
在 express.
app.post('/getData', function (req, res) {
let startTime=req.body.start
let endTime=req.body.end
sequelize.query(` select Date_Time from S001T01 where Date_Time between ${startTime} and ${endTime}`, {
type: sequelize.QueryTypes.SELECT
}).then(result => {
console.log(result)
})
});
它returns很多错误,其中之一是 UnhandledPromiseRejectionWarning: SequelizeDatabaseError: Invalid column name '2021-01-05T21:00:00.000Z 23:59:00'.
。
在 table 查看器 Date_Time 列中显示为那样
我不知道该怎么办。
感谢您的帮助。
您的日期时间格式可能有误。 2021-01-05T21:00:00.000Z 23:59:00
不对应传统的 ISO 8601.
如果您想要 2021-01-04T08:53:00.000Z
和 2021-01-05T21:00:00.000Z
之间的所有条目,您的 SQL 查询应该如下所示:
select Date_Time from S001T01 where Date_Time between 2021-01-04T08:53:00.000Z and 2021-01-05T21:00:00.000Z
您还应该考虑在串联时使用修改后的日期时间。
也许类似的东西应该可以完成这项工作:
var dt = new Date();
dt.setHours( dt.getHours() + 2 );
希望对你有所帮助。
我想使用 mssql 从 sql 服务器获取两个日期之间的所有数据,并在 nodejs 中查询 sequelize。
开始和结束日期来自 axios.post 的反应前端。
例如开始日期是 2021-01-04T08:53:00.000Z
结束日期是 2021-01-05T21:00:00.000Z
在 express.
app.post('/getData', function (req, res) {
let startTime=req.body.start
let endTime=req.body.end
sequelize.query(` select Date_Time from S001T01 where Date_Time between ${startTime} and ${endTime}`, {
type: sequelize.QueryTypes.SELECT
}).then(result => {
console.log(result)
})
});
它returns很多错误,其中之一是 UnhandledPromiseRejectionWarning: SequelizeDatabaseError: Invalid column name '2021-01-05T21:00:00.000Z 23:59:00'.
。
在 table 查看器 Date_Time 列中显示为那样
我不知道该怎么办。
感谢您的帮助。
您的日期时间格式可能有误。 2021-01-05T21:00:00.000Z 23:59:00
不对应传统的 ISO 8601.
如果您想要 2021-01-04T08:53:00.000Z
和 2021-01-05T21:00:00.000Z
之间的所有条目,您的 SQL 查询应该如下所示:
select Date_Time from S001T01 where Date_Time between 2021-01-04T08:53:00.000Z and 2021-01-05T21:00:00.000Z
您还应该考虑在串联时使用修改后的日期时间。
也许类似的东西应该可以完成这项工作:
var dt = new Date();
dt.setHours( dt.getHours() + 2 );
希望对你有所帮助。