nodejs使用'SET @'XXX''表达mysql查询

时间:2018-12-29 22:31:57

标签: mysql node.js express parameters routes

我正在开发nodejs / express应用。在我的路线中,我需要从MySQL数据库查询数据。对于其中包含参数的查询,它可以正常工作。 任何不带参数的查询都能按预期工作:

SELECT * FROM table WHERE col = 'b'

但是下面的一个返回undefined

 SET @a = 'b'
 SELECT * FROM table where col = @a

我在单独的函数中生成查询字符串(不确定是否有区别)。 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我认为您可能正在寻找

中所述的?占位符方法

https://www.w3schools.com/nodejs/nodejs_mysql_where.asp

var adr = 'Mountain 21';
var sql = 'SELECT * FROM customers WHERE address = ?';
con.query(sql, [adr], function (err, result) {
  if (err) throw err;
  console.log(result);
});

也有多个占位符,以数组形式传入:

var name = 'Amy';
var adr = 'Mountain 21';
var sql = 'SELECT * FROM customers WHERE name = ? OR address = ?';
con.query(sql, [name, adr], function (err, result) {
  if (err) throw err;
  console.log(result);
});
相关问题