gpt4 book ai didi

javascript - pg-promise 删除元组集的快速方法

转载 作者:行者123 更新时间:2023-12-02 19:28:44 26 4
gpt4 key购买 nike

是否有更好的方法来编写以下内容:

DELETE FROM
table
WHERE
_id = $<id>
AND (
item_id = $<item_id>
AND map_id = $<map_id>
OR
item_id = $<another_id>
AND map_id = $<another_map_id>
...
)

我的数据集格式是:

[
{
item_id: "some_id",
map_id: "other_id"
}
...
]

pg-promise 甚至简单的 postgreSQL 编写此代码的好方法是什么?

最佳答案

DELETE FROM table
WHERE
_id = $<id>
AND (item_id, map_id) IN ($<values:raw>)

如果您有以下输入数据:

const input = [
{
item_id: 'some_id',
map_id: 'other_id'
}
...
];

然后您可以使用 pg-promise 生成如下(参见 helpers.values ):

const values = pgp.helpers.values(input, ['item_id', 'map_id']);

或者您可以将列作为完整的 ColumnSet 传递,如果需要更多详细信息,例如类型转换等。

关于javascript - pg-promise 删除元组集的快速方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62125484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com