我在文档中找不到关于此主题的任何注释,希望有人可以解决。 我正在尝试转义我的queryparameters,但是我可以在不破坏查询的情况下添加别名。
我想要实现的目标:
SELECT order.name as orderName, customer.name as customerName FROM order LEFT JOIN customer ON order.customerID = customer.id
我在做什么:
let order = 'order.name as orderName';
let customer = 'customer.name as customerName';
let str = "SELECT ?? FROM order ...."
connection.query(str, [[order,customer]], function(err,res,fields){...}
我得到的是
SELECT 'order'.'name as orderName, customer'.'name as customerName' FROM order ...
显然这行不通。如何将别名传递给转义的参数?
编辑: 如果我只使用一个'?'我收到以下查询,该查询也无法正常运行:
SELECT 'order.name as orderName', 'customer.name as customerName' FROM order
非常感谢!
我不立即编写查询的原因是javascript中令人困惑的换行符('xyz,'+'abcd,'+ ..如果我在行尾缺少一个空格,js将吸引他们)。我希望这些长查询尽可能地可读。将列名称拆分为单个var似乎是唯一的方法。还是有人为此提供了很好的方法?