From: | Stephane Schildknecht <sschildknecht(at)aurora-linux(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Boolean to int |
Date: | 2002-07-04 17:26:35 |
Message-ID: | 1025803595.20819.239.camel@fukse |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
I'd like to get 1 or 0 from a select on a boolean field.
How could I do ?
I tried the following rule, which I can't insert :
CREATE FUNCTION bool_to_int( boolean ) RETURNS integer AS '
DECLARE
my_bool ALIAS FOR $1 ;
BEGIN
-- Retourne 1 si true, 0 si false
IF my_bool IS FALSE THEN
RETURN 0 ;
ELSIF my_bool IS TRUE THEN
RETURN 1 ;
ELSE RETURN -1 ;
END IF ;
END ;
' LANGUAGE 'plpgsql';
CREATE RULE boolean_return AS ON SELECT TO DOCUMENT DO INSTEAD
SELECT
document_id,
workflow_id,
type_document_id,
image_id,
theme_id,
document_version,
document_surtitre,
document_titre,
document_chapeau,
document_synthese,
document_corps,
document_pdf,
document_date_creation,
document_mot_clef,
(bool_to_int(document_online)) as document_online,
bool_to_int(document_valid) as document_valid FROM document;
psql:cnambo_proc_stock.sql:69: ERROR: select rule's target entry 15
has different type from attribute document_online
Who could help me ?
S(at)S
--
_Stéphane SCHILDKNECHT___________________________________
| AurorA-SAS 69-71, Av. Pierre Grenier 92100 BOULOGNE |
| Tel : 01.58.17.03.20 Fax : 01.58.17.03.21 |
| mailto:sschildknecht(at)aurora-linux(dot)com - ICQ : 142504394 |
| "Free Markets have taught that innovation is best when |
| ideas flow freely." Adam Smith |
|_________________________________________________________|
From | Date | Subject | |
---|---|---|---|
Next Message | Stephan Szabo | 2002-07-04 18:45:42 | Re: Boolean to int |
Previous Message | Achilleus Mantzios | 2002-07-04 15:56:03 | Re: how to write procedures |