[EMAIL PROTECTED] wrote:
I have a table with a lot of fields, some of which are type TEXT. I
seem to have a lot of occasions where I'd like to see almost all of
the fields in a query but a SELECT * will pull in the text fields,
which then wrap across the screen, even using \x. Is there a variation
of SELECT that is something like 'select all fields except these here
WHERE...'? This would save me a lot of typing. I checked the docs but
missed it if it's in there.


You could create a new type with the columns you'd like to see:

CREATE TYPE my_type AS
(
  this  TIMESTAMP NOT NULL
  that  INT4 NOT NULL,
  other VARCHAR(128),
);

CREATE FUNCTION my_function()
  RETURNS SETOF my_type IMMUTABLE
AS $_$
  DECLARE
    the_type my_type%rowtype;
  BEGIN
    FOR the_type IN
      EXECUTE 'SELECT t.this, t.that, t.other FROM my_table WHERE ...'
      LOOP
        RETURN NEXT the_type;
      END LOOP;
    RETURN;
  END;
$_$ LANGUAGE plpgsql

brian

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to