fail to compare between bytea output in plpgsql
am 20.07.2004 20:24:57 von pwangI have a function and am using cursor. All the columns I select in the curs=
or clause are BYTEA datatype.
I need to compare the after-fetch-value for two BYTEA columns which is temp=
2 and temp3 shown as below.=20
I don't think I can compare it because there is no record in temp table whi=
ch I use for debug purpose.
Does anyone know how to compare the after-fetched-value for two BYTEA data=
type in pgsql's function?=20
CREATE OR REPLACE FUNCTION pa_revision(INT4, INT4)
RETURNS INTEGER AS '
DECLARE
i_ages ALIAS FOR $1;
i_devs ALIAS FOR $2;
cur1 CURSOR FOR
SELECT a.device_id, a.baseline_revision_id, b.revision_id, b.operational_de=
vice_id <<--------- All BYTEA datatype
FROM cm_device a, cm_revision b
WHERE a.device_id =3D b.operational_device_id
AND current_date - b.creation_date > i_ages;
temp1 cm_device.device_id%TYPE;
temp2 cm_device.baseline_revision_id%TYPE;
temp3 cm_revision.revision_id%TYPE;
temp4 cm_revision.operational_device_id%TYPE;
temp5 INT4;
BEGIN
OPEN cur1;
LOOP
FETCH cur1 INTO temp1, temp2, temp3, temp4;
IF NOT FOUND
THEN
RETURN 1;
END IF;
IF temp2 <> temp3 THEN <<-------------------------------- How can I compa=
re the value of BYTEA datatype ?
SELECT count(*)
INTO temp5
FROM cm_revision
WHERE operational_device_id =3D temp4;
insert into temp values (temp5);
.........
END IF;
END IF;
END LOOP;
CLOSE cur1;
RETURN 0;
END;
' LANGUAGE 'plpgsql';
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match