From: Adrian Klaver <aklaver@comcast.net>
To: pgsql-sql@postgresql.org
Cc: Karthikeyan Sundaram <skarthi98@hotmail.com>
Cc: postgres admin <pgsql-admin@postgresql.org>
Subject: Re: [SQL] Question on pgpsql function
Date: Sun, 8 Apr 2007 13:22:11 -0700
Message-ID: <200704081322.11879.aklaver@comcast.net> (raw)
In-Reply-To: <BAY131-W13C024D09AE528E6496EECB05A0@phx.gbl>
References: <BAY131-W13C024D09AE528E6496EECB05A0@phx.gbl>
On Sunday 08 April 2007 12:47 pm, Karthikeyan Sundaram wrote:
> Hi Everybody,
>
> I am using Postgres 8.1.0 and I have a requirement.
>
> I have a table
>
> create table weekly_tbl (id int, week_flag bit(7) not null default
> '1111111');
>
> I want to create a function like this
>
> create function week_func (int) returns weekly_tbl as
> $$
> select id,
> substr(week_flag,1,1) as monday_flag,
> substr(week_flag,2,1) as tuesday_flag,
> substr(week_flag,3,1) as wednesday_flag,
> substr(week_flag,4,1) as thursday_flag,
> substr(week_flag,5,1) as friday_flag,
> substr(week_flag,6,1) as saturday_flag,
> substr(week_flag,7,1) as sunday_flag
> from weekly_tbl where id=$1;
> $$
> language SQL;
>
> I am getting an error message
> ERROR: function substr(bit, integer, integer) does not existHINT: No
> function matches the given name and argument types. You may need to add
> explicit type casts.CONTEXT: SQL function "week_func"
>
> I know I can do this in view. But for a purpose, I don't want to do it in
> view. Can somebody help me?
>
> Regards
> skarthi
The problem is with your use of the substr() function. You are passing it a
field of type bit (week_flag) where the function needs a text type. See the
documentation for bit functions-
http://www.postgresql.org/docs/8.2/interactive/functions-bitstring.html
There are some bit compatible string functions mentioned.
--
Adrian Klaver
aklaver@comcast.net
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: aklaver@comcast.net, skarthi98@hotmail.com, pgsql-admin@postgresql.org
Subject: Re: [SQL] Question on pgpsql function
In-Reply-To: <200704081322.11879.aklaver@comcast.net>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox