Alf*_*lle 2 postgresql node.js pg-promise
运行NodeJS和pg-promise。
我有一个数组:
let my_array = new array('x', 'y', 'z');
Run Code Online (Sandbox Code Playgroud)
我正在尝试将此作为参数传递给我的PostgreSQL查询pg-promise:
db_webhooks.any('SELECT cars FROM my_cars WHERE id IN ($1)', [my_array])
.then...
Run Code Online (Sandbox Code Playgroud)
但它因类型错误而失败。我试过.join数组,但也得到错误,因为它导致一个字符串'x,y,z'而不是'x','y','z'.
打印出调用的调试/查询给了我:
QUERY: SELECT cars FROM my_cars WHERE id IN (array['x','y','z'])
Run Code Online (Sandbox Code Playgroud)
这应该是:
QUERY: SELECT cars FROM my_cars WHERE id IN ('x','y','z')
Run Code Online (Sandbox Code Playgroud)
该库为此目的支持CSV 过滤器:
await 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') */
Run Code Online (Sandbox Code Playgroud)
或者您可以使用:list,这是相同的:
await 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') */
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
956 次 |
| 最近记录: |