Я пытаюсь вызвать запрос через EJS / Express.Это работает в MySQL напрямую, но не через Express / EJS.
У меня есть рабочий запрос в MySQL, который не распознается, когда я пытаюсь запустить через Express.
'SET @cumulative:=0; \
select * from ( \
select str_to_date(dateAndTime,\'%Y-%m-%d %T\') AS
dateAndTime,description,chargeId,amount,(@cumulative := @cumulative +
amount) AS cumulative \
from charges \
WHERE chargeStatus = "succeeded" AND
DATE_ADD(str_to_date(dateAndTime,\'%Y-%m-%d\'), INTERVAL 0 HOUR) =
CURDATE() \
order by str_to_date(dateAndTime,\'%Y-%m-%d %T\') \
) AS T1 order by cumulative desc'
Почему этот запрос работает в MySQL, например, непосредственно в Workbench, но не при вызове через Express / Node?
Ниже приведен модуль моего узла.
Кроме того, удаление строки 'SET @cumulative:=0; \
приводит к успеху (с отсутствующим полем результатов, накопительным).
var db = require('../db/db');
var queryString = 'select * from ( \
select str_to_date(dateAndTime,"%Y-%m-%d %T") AS dateAndTime,description,chargeId,amount,(@cumulative := @cumulative + amount) AS cumulative \
from charges \
WHERE chargeStatus = "succeeded" AND DATE_ADD(str_to_date(dateAndTime,"%Y-%m-%d"), INTERVAL 0 HOUR) = CURDATE() \
order by str_to_date(dateAndTime,"%Y-%m-%d %T") \
) AS T1 order by cumulative desc';
module.exports = {
home: function(req, res){
db.query(queryString,function(err,result){
if(err){
console.log(err)
}
if(result===undefined){
res.send('No results')
}
else{
res.render('home',{result:result});
}
});
},
};