我想在使用 mysql 的 express 框架中使用 AND 运算符实现查询。
mysql 查询:从 question_id=1 AND answer="apple"AND appkey="1122"的问题中选择 *;
我想用mysql在express js中实现上面的查询。我尝试了以下查询。
req.getConnection(function(err,connection){
var data = {
qid : input.questionid,
ansvalue : input.answervalue,
appid : input.appkey,
};
console.log(data);
var query = connection.query('SELECT * FROM request_auth WHERE question_id = ?',[qid]'AND answer_description = ?',[ansvalue]'AND app_key = ?',[appid],function(err,rows)
{
if(query=='')
console.log("Error Selecting : %s ",err );
res.render('edit_customer',{page_title:"Edit Customers - Node.js",data:rows});
});
但它抛出错误 qid is not defined。请给我解决方案。谢谢。
最佳答案
您必须将实际查询(使用占位符)和占位符参数分开(参见第三个示例 here):
connection.query('SELECT * FROM request_auth WHERE question_id = ? AND answer_description = ? AND app_key = ?', [qid, ansvalue, appid], ...)
此外,请确保在查询完成时调用 connection.release()
(更多信息 here)。
关于mysql - 如何在带有 Express 框架的 mysql 中使用 AND 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45280965/