为了说明,这里是Postgres的9.6一些表: people
id | name
----+------
1 | a
2 | b
3 | c
4 | d
groups
id | name
----+-------
10 | xxx
20 | yyy
30 | zzz
people_in_group
person_id | group
我已经写了一个返回触发器的PL/PGSQL函数,所以我可以在每行插入之前调用它。我现在意识到我也希望该函数返回新插入行的ID。我不太确定如何继续,因为我的函数必须返回一个触发器。下面是一些代码: CREATE OR REPLACE FUNCTION f_insert_album() RETURNS TRIGGER AS $$
DECLARE
subj_album_id INTEGER;
我想从Oracle合并查询中返回主键。 我使用一个单独的语句来插入,如果不存在,我不希望使用过程或函数来进行.. 这是样本查询 merge into myTable e
using (select :empname name from dual) s
on (UPPER(TRIM(e.empname)) = UPPER(TRIM(s.name)))
when not
里使用Postgres 9.6,我遵循了https://stackoverflow.com/a/40325406/435563建议做一个INSERT或SELECT并返回得到的ID策略: with ins as (
insert into prop (prop_type, norm, hash, symbols)
values (
$1, $2, $3, $4
) on
我试图允许插入语句与返回子句到Postgres v9.4中的视图,但我正在努力与语法。这是我想要调用插入语句的方式: CREATE VIEW MyView AS SELECT a.*, b.someCol1
FROM tableA a JOIN tableB b USING(aPrimaryKey);
INSERT INTO MyView (time, someCol) VALUES