sql - PostgreSQL INSERT INTO WITH 多个 SELECT

标签 sql postgresql subquery sql-insert

我正在寻找实现以下目标的 SQL 语句:

我有一个类似 {ida | 的表idb |计数 |直接
我想将行插入到表中,从另一个表中获取 ids ab,count 和 direct 是给定的值。我试过这样的事情:

不工作:

INSERT INTO my_tbl (ida, idb, count, direct)  
SELECT id FROM other_tbl WHERE word ='test'  
UNION  
SELECT id FROM other_tbl WHERE word ='tost' 23, 5;

提前致谢。

最佳答案

这是你想要的吗?

INSERT INTO my_tbl (ida, idb, count, direct) 
    SELECT o1.id, o2.id, 23, 5
    FROM other_tbl o1 JOIN
         other_tbl o2
         ON o1.word = 'test' AND o2.word = 'tost';

关于sql - PostgreSQL INSERT INTO WITH 多个 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51456319/

相关文章:

sql - PostgreSQL - 在执行 SELECT 时检查外键是否存在

function - 这个 postgres 函数是否具有成本效益还是仍然需要清理

php - 如何在 Laravel 中编写子查询?

mysql - 将 mysql 查询转换为 postgresql

ruby-on-rails - Ruby on Rails 6 Postgres upsert_all 区分更新和插入

mysql - 什么会导致查询在使用子查询时运行缓慢,但在单独运行时却不会?

php - 尝试连接表时Mysql子查询错误(制作评级系统)

sql - 使用子查询更新与使用连接更新 - 哪个性能更好

sql - 合并内的子查询

Mysql 多参数在存储过程中有多个查询