Search Postgresql Archives

Re: how to pass tablename to a function

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

 




-----Original Message-----
From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of alecinvan
Sent: Thursday, September 04, 2014 6:28 PM
To: pgsql-general@xxxxxxxxxxxxxx
Subject:  how to pass tablename to a function

Hi, All

I like to pass the tablename to function but not using execute clause, here is my script

CREATE OR REPLACE FUNCTION functions.pgsql_event_unpack_batch(IN _tbl text, IN jobid bigint, IN jobtime timestamp with time zone, IN startid bigint, IN stopid bigint)
  RETURNS TABLE(events bigint, errors bigint[]) AS $BODY$ BEGIN

RETURN QUERY
WITH
     unpacking (raw_id, time, userid, eventtype, pagename, userhost, application, status, error)
     AS (
        select 
              id as raw_id, 
              (up).time, 
              (up).userid,
              coalesce((up).eventtype, ''),
              coalesce((up).pagename, ''),
              (up).userhostaddress as userhost,
              coalesce((up).application, ''),
              (up).status, 
              (up).error
         from(
              select id, 
                     functions.python_events_unpack(event_object) up
              from  _tbl 
              where id between startid and stopid
         ) a 
         where (up).userid is not NULL 
      )


I want to pass the _tbl to the select query integrated in the unpacking(), how can I make it?

thanks

Alec


You can't.
You have to use dynamic sql (EXECUTE).

Regards,
Igor Neyman


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general





[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