Re: Generic Join on Arrays
От | Michael Fuhr |
---|---|
Тема | Re: Generic Join on Arrays |
Дата | |
Msg-id | 20050530140857.GA78280@winnie.fuhr.org обсуждение исходный текст |
Ответ на | Generic Join on Arrays (KÖPFERL Robert <robert.koepferl@sonorys.at>) |
Список | pgsql-sql |
On Mon, May 30, 2005 at 03:42:49PM +0200, KÖPFERL Robert wrote: > > As I found out, pg_proc relation provides me with data about defined stored > procedures. Togehter with other relations as pg_type I can retrieve readable > information, like: > select proname, pd.description FROM pg_proc pp left outer join > pg_description pd on pp.oid=pd.objoid > > BUT, how about arrays of type "oidvector" (int4-array) containing foreign > keys (to be joined) as pg_proc's column "proargtypes" Have you used ECHO_HIDDEN (or psql -E) to look at the queries that \df generates? Would oidvectortypes() be useful? SELECT proname, oidvectortypes(proargtypes) FROM pg_proc WHERE proname = 'substr';proname | oidvectortypes ---------+-------------------------substr | bytea, integersubstr | text, integersubstr | bytea, integer, integersubstr | text, integer, integer (4 rows) Another possibility might be to cast the function's oid to regprocedure: SELECT oid::regprocedure FROM pg_proc WHERE proname = 'substr'; oid -------------------------------substr(bytea,integer)substr(text,integer)substr(bytea,integer,integer)substr(text,integer,integer) (4 rows) Is either of those what you're looking for? They don't address the problem in the general case, but they might serve in this particular case. -- Michael Fuhr http://www.fuhr.org/~mfuhr/
В списке pgsql-sql по дате отправления: