Каков наилучший подход к фильтрации данных по месяцам в базе данных MYSQL и серверной части NodeJS?
У меня есть все данные в моей переменной результатов, которые я анализирую для ejs.
let sql = "SELECT * FROM test_results";
exports.home = function (req, res, error) {
pool.getConnection(function (err, connection) {
if (err) throw err; // not connected!
connection.query(sql, function (err, results, fields) {
if (err) throw error;
res.render('home/index', {
moment: moment,
results: results
});
});
connection.release();
if (err) throw error;
})
};
У меня есть отметки времени каждого раза, когда в БД записывались данные, так что теперь мне нужно получить число. Сколько строк было создано в январе, феврале ...
Я пробовал такие вещи, какthis:
connection.query("SELECT * FROM test_results WHERE test_date_time BETWEEN '2018-01-01 05:00:00' and '2018-01-31 05:00:00'", function(err, results, fields) {
и я делал это каждый месяц, а затем анализировал данные в ejs.Но я не думаю, что это хороший подход.Также мне нужны все результаты на стороне клиента, чтобы я мог работать с ними, поэтому я не знаю, есть ли способ фильтровать данные с помощью JS, а не в запросе SQL.
Я пытался конвертировать метки времени с моментом, а затемОтфильтруйте с помощью оператора if, но я не понял, как это сделать.
Есть идеи?Спасибо