Monday, 14 February 2011

change Column datatype

-- Function: pc_chartoint(character varying)

-- DROP FUNCTION pc_chartoint(character varying);

CREATE OR REPLACE FUNCTION pc_chartoint(chartoconvert character varying)
RETURNS integer AS
$BODY$
SELECT CASE WHEN trim($1) SIMILAR TO '[0-9]+'
THEN CAST(trim($1) AS integer)
ELSE NULL END;

$BODY$
LANGUAGE 'sql' IMMUTABLE STRICT
COST 100;
ALTER FUNCTION pc_chartoint(character varying) OWNER TO postgres;