【问题标题】:PostgresSql error: more than one row returned by a subquery used as an expression [duplicate]Postgresql错误:用作表达式的子查询返回多行[重复]
【发布时间】:2019-08-30 05:48:13
【问题描述】:

我正在运行此查询,其中 rel_branding 中有超过 1 行,我想在 rel_branding_permission 中插入每条记录的brandingid。

这适用于 PostgresSQL。

insert into rel_branding_permission (brandingid,permissionid) 
values((select brandingid from rel_branding), 404);

我想在我的数据库中插入这个查询作为所有品牌 ID

【问题讨论】:

    标签: sql postgresql sql-insert


    【解决方案1】:

    您应该在这里使用INSERT INTO ... SELECT,如下所示:

    INSERT INTO rel_branding_permission (brandingid)
    SELECT brandingid
    FROM rel_branding
    WHERE <some condition>
    

    您可能希望在rel_branding_permission 表的插入中包含多个列,并且您可以通过将附加列添加到INSERTSELECT 来修改上述内容以满足您的需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-13
      • 1970-01-01
      • 2013-05-24
      • 1970-01-01
      相关资源
      最近更新 更多