javascript - SQLITE:时间戳之间的选择不起作用
问题描述
我的目标是在某个时间跨度的两个时间戳之间进行搜索,所有这些都存储在一个动态数量的时间戳数组中,具体取决于我想过去搜索多少天。最初它们看起来像那样,2020-07-30T08:41:22.164Z
但我删除了它不重要的部分,现在看起来像那样07-30
。所以我只是将时间戳过滤到它的月份和日期。现在我的问题:我正在尝试使该命令起作用:"SELECT status FROM database WHERE timeStamp BETWEEN '%datesStored[datesStored.length -1]%' AND '%datesStored[0]%'"
。忽略我在时间戳应该在的地方使用 JS 的事实。整个 SQLite 语句实际上是我构建的一个字符串,我试图以 nore-red 发送到 SQLite 节点。但这并不重要。他们唯一需要的是可以工作的特定命令。感谢您的任何回复。
var datesSaved = msg.payload;
var daysBack = global.get("maxDaysBack");
var min = datesSaved[0];
var max = datesSaved[datesSaved.length-1];
msg.topic = "SELECT status, dateTime FROM database WHERE dateTime BETWEEN '%07-28%' AND '%07-29%';";
msg.labels = msg.payload;
msg.payload = [];
return msg;
解决方案
我不确切知道您的搜索策略是什么,但如果您想查看过去 7 天的所有记录,您可以使用:
SELECT status, dateTime
FROM database
WHERE dateTime >= date('now', '-7 day');
推荐阅读
- javascript - 是否可以从客户端解决跨域资源共享问题?
- go - [1] int{} 和 [] int{0} 有什么区别
- php - PHP 访问 jSON - 错误 - 试图获取非对象的属性“amount_formatted”
- ios - iPhone 7 上的 devicePixelRatio
- python - 每次运行脚本时如何在同一个 .csv 文件中写一个新行?
- scala - keyBy 是否在 Flink(scala)中跨并行任务对 DataStream 进行分区?
- android - React Native 未连接到 VS Code 调试器
- disassembly - 在 IDAPython 中处理名称
- excel - 如何显示错误信息和停止宏
- java - java jackson XML - 解析时如何忽略外包装?