【问题标题】:How do I select distinct and then perform a multi-insert for each of the distinct results?如何选择不同的,然后为每个不同的结果执行多重插入?
【发布时间】:2020-04-27 15:47:43
【问题描述】:

我想在一个表中选择所有不同的orgIds,然后对同一个表中的每个不同结果运行此插入查询?:

INSERT into "ffOrgs" (id, "ffId", "orgId", value, enabled, "createdAt", "updatedAt")
values (uuid_generate_v4(), 1111 , ABC, null, now(), now(), true),
( uuid_generate_v4(), 1001 , ABC, null, now(), now(), true)
( uuid_generate_v4(), 1002 , ABC, null, now(), now(), true)
( uuid_generate_v4(), 1003 , ABC, null, now(), now(), true)

例如,假设该表有 5 个唯一的 orgIds(ABC、DEF、GHI、JKL、MNO),对于每个组织,我想插入上述一组值。您将如何组合这两个查询?

【问题讨论】:

  • ffId 的值从何而来?

标签: jquery sql postgresql distinct sql-insert


【解决方案1】:

我认为你想要:

insert into fforgs (id, ffid, orgid, value, enabled, createdat, updatedat)
select uuid_generate_v4(), f.ffId, o.orgId, null, now(), true
from (select distinct ffId from ffOrgs) o
cross join (values(1111, 1001, 1002, 1003)) f(orgId)

查询从表中选择所有不同的ffId,然后用ordId 值的固定列表cross joins。结果数据集被插入。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 2012-07-12
    • 1970-01-01
    • 2017-06-22
    • 2018-12-09
    • 1970-01-01
    • 2022-10-13
    相关资源
    最近更新 更多