Search Postgresql Archives

Re: query has no destination for result data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/6/19 8:19 AM, Rob Sargent wrote:


On Mar 6, 2019, at 7:41 AM, Adrian Klaver <adrian.klaver@xxxxxxxxxxx <mailto:adrian.klaver@xxxxxxxxxxx>> wrote:

On 3/6/19 7:37 AM, Pavel Stehule wrote:

or
\sf+ functioname

Cool, I learned something new.

Regards
Pavel



using \ef function 65 puts the cursor on the first line of the loop. So a debugging statement got in the way!  I don’t need the variables set other than to keep track of what’s going on in the loop. They’re gone now and so it the problem (and hopefully I’ll correct my ways).

Where you maybe needing SELECT INTO?:

https://www.postgresql.org/docs/10/plpgsql-statements.html#PLPGSQL-STATEMENTS-SQL-ONEROW

So something like(not tested):

select min(ordinal), max(ordinal) into imkr, jmkr from mrkidx where ordinal between segp.firstmarker and segp.lastmarker;

Thank you all.

       raise notice '%: added % segments to imputed_pvalue_t',
    clock_timestamp(), rcount;
    --
       for segp in
         select s.id <http://s.id>, s.firstmarker, s.lastmarker,
                v.ipv,
                array_length(p.probands,1) as pbs,
                s.lastmarker - s.firstmarker as mks
         from segment s
              join imputed_pvalue_t v on s.id <http://s.id> = v.segment_id
              join probandset p on s.probandset_id = p.id <http://p.id>
              join probandset_group_member m on p.id <http://p.id> =
    m.member_id
         where s.markerset_id = mkset
               and m.group_id = pbsgid
         order by ipv, pbs, mks
       LOOP
    _select imkr=min(ordinal), jmkr=max(ordinal) from mrkidx where
    ordinal between segp.firstmarker and segp.lastmarker;_
         raise notice 'seg % start=% i=% end=% j=%', segp.id
    <http://segp.id>, segp.firstmarker, imkr, segp.lastmarker, jmkr;
         delete from mrkidx where ordinal between segp.firstmarker and
    segp.lastmarker;
         get diagnostics rcount = ROW_COUNT;
         segsdone = segsdone + 1;
         if rcount > 0 then
            insert into collected values(segp.id <http://segp.id>,
    segp.ipv);
            totalinserts = totalinserts + rcount;
            if totalinserts = mkrcnt then  -- really totalDELETES
               raise notice '%: no markers left on %th segment %',
    clock_timestamp(), segsdone, segp.id <http://segp.id>;
               exit;
            end if;
         end if;
       end loop;

--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx <mailto:adrian.klaver@xxxxxxxxxxx>



--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux