运行DataGrid
和NodeJS
。
我有一个数组:
pg-promise
我正在尝试使用let my_array = new array('x', 'y', 'z');
将其作为参数传递给我的PostgreSQL
查询:
pg-promise
但是它失败并出现类型错误。
我尝试db_webhooks.any('SELECT cars FROM my_cars WHERE id IN ($1)', [my_array])
.then...
数组,但也出错,因为它导致字符串.join
而不是'x,y,z'
。
打印出名为的调试/查询会给我:
'x','y','z'
这应该是:
QUERY: SELECT cars FROM my_cars WHERE id IN (array['x','y','z'])
答案 0 :(得分:1)
图书馆为此目的支持CSV Filter:
db.any('SELECT cars FROM my_cars WHERE id IN ($1:csv)', [my_array])
/*=> SELECT cars FROM my_cars WHERE id IN ('x', 'y', 'z') */
或者您可以使用:list
,它是相同的:
db.any('SELECT cars FROM my_cars WHERE id IN ($1:list)', [my_array])
/*=> SELECT cars FROM my_cars WHERE id IN ('x', 'y', 'z') */