Skip to content

Commit d949521

Browse files
committed
Merge remote-tracking branch 'origin/production' into production
2 parents 493ff13 + 8ab1e24 commit d949521

File tree

1 file changed

+14
-9
lines changed

1 file changed

+14
-9
lines changed

function/ap/explorersearch.sql

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -73,16 +73,16 @@ BEGIN
7373
RAISE NOTICE 'doTaph is %', doTaph;
7474
END IF;
7575

76-
IF ( _abundPct IS NOT NULL AND noTaxa = false ) THEN
77-
RAISE NOTICE '_abundPct is % and noTaxa is %', doTaph, noTaxa;
76+
IF ( _abundpct IS NOT NULL AND noTaxa = false ) THEN
77+
RAISE NOTICE '_abundpct is % and noTaxa is %', doTaph, noTaxa;
7878
BEGIN
7979
-- get SumGroupID of the first (or only) taxon id
8080
sumGroupId := (
8181
SELECT sg.sumgroupid
8282
FROM ndb.ecolgroups eg
8383
JOIN ap.pollensumgroups sg ON eg.ecolgroupid = sg.ecolgroupid
8484
WHERE
85-
eg.taxonid IN (array_to_string( _taxonids[0],','))
85+
eg.taxonid IN (_taxonids[1])
8686
);
8787
IF sumGroupId > 0 THEN
8888
doAbund := true;
@@ -108,7 +108,12 @@ BEGIN
108108
BEGIN
109109
cteBaseSelect := cteBaseSelect || ',
110110
v.taxonid,
111-
CAST(d.value / SUM(d.value) OVER(PARTITION BY s.sampleid) * 100 AS DECIMAL(5,2)) AS abundance';
111+
(CASE WHEN (SUM(d.value) OVER(PARTITION BY s.sampleid)) IS NOT NULL AND
112+
(SUM(d.value) OVER(PARTITION BY s.sampleid)) <>0 THEN
113+
(CAST(d.value / SUM(d.value) OVER (PARTITION BY s.sampleid) * 100 AS DECIMAL(5,2)))
114+
ELSE
115+
NULL END
116+
) AS abundance';
112117
cteBaseFrom := cteBaseFrom || '
113118
JOIN ndb.taxa t ON v.taxonid = t.taxonid
114119
JOIN ndb.ecolgroups e ON t.taxonid = e.taxonid
@@ -145,7 +150,7 @@ BEGIN
145150
cteBaseFrom := cteBaseFrom || '
146151
JOIN ndb.samplekeywords k on s.sampleid = k.sampleid';
147152
cteBaseWhere := cteBaseWhere || '
148-
AND k.KeywordID = _keywordId';
153+
AND k.keywordid = _keywordid';
149154
END;
150155
END IF;
151156

@@ -176,8 +181,8 @@ BEGIN
176181

177182
IF doAbund THEN
178183
cteAgesWhere := cteAgesWhere || '
179-
AND base.abundance > ' || _abundPct ||
180-
' AND base.taxonid IN (' || array_to_string( _taxonids ,',') || '))';
184+
AND base.abundance > ' || _abundpct ||
185+
' AND base.taxonid IN (' || array_to_string( _taxonids ,',') || ')';
181186
END IF;
182187

183188
IF NOT (_ageold IS NULL AND _ageyoung IS NULL AND noTaxa = false) THEN
@@ -346,7 +351,7 @@ BEGIN
346351

347352
IF _subdate IS NOT NULL THEN
348353
cteDsWhere := cteDsWhere || '
349-
AND ds.recdatecreated >= ' || _subdate;
354+
AND ds.recdatecreated >= ''%' || _subdate || '%''';
350355
END IF;
351356

352357
IF _gpid IS NOT NULL THEN
@@ -398,7 +403,7 @@ BEGIN
398403
AND EXISTS (SELECT k.datasetid, k.keywordid
399404
FROM ap.datasetkeywords k
400405
WHERE k.datasetid = ds.datasetid
401-
AND k.keywordid = ' || _keywordid ' )';
406+
AND k.keywordid = ' || _keywordid || ' )';
402407
END IF;
403408

404409
IF _datasettypeid IS NOT NULL THEN

0 commit comments

Comments
 (0)