var arr = ["a","b","c","d"]; await session.run(`MATCH (x:Test WHERE x.name IN ${arr}`)
我在nodeJs中使用neo4j数据库,我正在编写查询,但我在arr中出现错误,我尝试了许多方法,但我没有定义arr。
arr
uxhixvfz1#
JavaScript未按预期的方式设置字符串的格式:
var arr = ["a", "b", "c", "d"] let x = `MATCH (x:Test) WHRE x.name IN ${arr}` console.log(x)
这将打印:
"MATCH (x:Test) WHRE x.name IN a,b,c,d"
这不是有效的密码。要解决此问题,只需向查询中添加一个参数,让Neo4j驱动程序为您进行格式化即可:
await session.run( "MATCH (x:Test WHERE x.name IN $arr", {arr: arr}, )
请在此处查看此语法的参考。
zkure5ic2#
试试这个,
var arr = ["a","b","c","d"]; await session.run(`MATCH (x:Test WHERE x.name IN ${JSON.stringify(arr)} `)
2条答案
按热度按时间uxhixvfz1#
JavaScript未按预期的方式设置字符串的格式:
这将打印:
这不是有效的密码。
要解决此问题,只需向查询中添加一个参数,让Neo4j驱动程序为您进行格式化即可:
请在此处查看此语法的参考。
zkure5ic2#
试试这个,