Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

SELECTing into usertype, how to do it?



I have a type, declared like this:

CREATE TYPE type_a AS (
	member_a varchar,
	member_b bool
);

There is also a table:

CREATE TABLE table_a (
	col_a varchar,
	col_b bool,
	col_c int4
);

Now, in a function, I declared type_var variable of type type_a:

DECLARE	type_var type_a;

And then, when I want to fill in the type_var, i do this:

	type_var.member_a := col_a FROM table_a WHERE col_c = 5;
	type_var.member_b := col_b FROM table_a WHERE col_c = 5;

Is there a way to fill in the type_var, but from just one statement?
Here I have two 'selects' on table_a, and that seems as bit expensive
when iterated a lot of times.

I guess I could do:
	SELECT col_a, col_b INTO type_var.member_a, type_var.member_b FROM
table_A WHERE col_c = 5;

but that is a bit hard to read :)

Are there more options on doing what I'd like to do?

	Mario
-- 
Mario Splivalo
Mob-Art
mario(dot)splivalo(at)mobart(dot)hr

"I can do it quick, I can do it cheap, I can do it well. Pick any two."





Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group