Re: simple function index question

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Michael Moore <michaeljmoore(at)gmail(dot)com>
Cc: postgres list <pgsql-sql(at)postgresql(dot)org>
Subject: Re: simple function index question
Date: 2016-03-23 00:39:24
Message-ID: CAKFQuwYM7XoHOz77zcbuDudXn_iaVuax+2WO24dvHCQKZQKv-w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Tuesday, March 22, 2016, Michael Moore <michaeljmoore(at)gmail(dot)com> wrote:

> *This:*
> CREATE INDEX TX_QSET_DIR_MAP_PRI_URI_TYP_UK
> ON tx_question_set_dir_map
> USING btree
> ((
> CASE
> WHEN uri_type = 201900 then
> (question_set2tx_question_set ,uri_type, null)
> ELSE
> (question_set2tx_question_set ,uri_type, question_set_dir_map_key)
> END))
> TABLESPACE qsn_indx_ol;
>
> *results in*
> ERROR: column "" has pseudo-type record
> ********** Error **********
>
> ERROR: column "" has pseudo-type record
> SQL state: 42P16
>
> Hopefully it is clear what I am attempting to do here. How do I make this
> happen?
>

I suspect the system dislikes your attempt to use an anonymous composite as
a column in an index.

I question whether what you are trying to do resembles good data modeling.
But if you must you can probably define Ana,Ed composite type and cast the
result of the case to it.

David J.

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Rosser Schwarz 2016-03-23 00:54:23 Re: simple function index question
Previous Message Michael Moore 2016-03-23 00:23:50 simple function index question