-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinsertradiocarbon.sql
More file actions
28 lines (28 loc) · 1.93 KB
/
insertradiocarbon.sql
File metadata and controls
28 lines (28 loc) · 1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CREATE OR REPLACE FUNCTION ts.insertradiocarbon(_geochronid integer,
_radiocarbonmethodid integer DEFAULT NULL::integer,
_percentc double precision DEFAULT NULL::double precision,
_percentn double precision DEFAULT NULL::double precision,
_delta13c double precision DEFAULT NULL::double precision,
_delta15n double precision DEFAULT NULL::double precision,
_cnratio double precision DEFAULT NULL::double precision,
_masscmg double precision DEFAULT NULL::double precision,
_percentcollagen double precision DEFAULT NULL::double precision,
_reservoir double precision DEFAULT NULL::double precision)
RETURNS void
LANGUAGE sql
AS $function$
INSERT INTO ndb.radiocarbon(geochronid, radiocarbonmethodid, percentc,
percentn, delta13c, delta15n, percentcollagen, reservoir, masscmg, cnratio)
VALUES (_geochronid, _radiocarbonmethodid, _percentc, _percentn, _delta13c,
_delta15n, _percentcollagen, _reservoir, _masscmg, _cnratio)
ON CONFLICT (geochronid) DO UPDATE
SET radiocarbonmethodid = COALESCE(EXCLUDED.radiocarbonmethodid, radiocarbonmethodid)
percentc = COALESCE(EXCLUDED.percentc, percentc),
percentn = COALESCE(EXCLUDED.percentn, percentn),
delta13c = COALESCE(EXCLUDED.delta13c, delta13c),
delta15n = COALESCE(EXCLUDED.delta15n, delta15n),
percentcollagen = COALESCE(EXCLUDED.percentcollagen, percentcollagen),
reservoir = COALESCE(EXCLUDED.reservoir, reservoir),
masscmg = COALESCE(EXCLUDED.masscmg, masscmg),
cnratio = COALESCE(EXCLUDED.cnratio, cnratio)
$function$