Criar função no Oracle

Pessoal

Estou precisando criar uma função no Oracle, para preciso definir um tipo para VarPart, de uma maneira que não precise colocar entre aspas quando chama-la, como por exemplo: DATEPART ( YEAR , ‘01/01/2008’ ) as ano, a palavra YEAR sem estar entre aspas.
Tentei definir VarPart como varchar, mas ai tenho que passar YEAR entre aspas.

Alguem teria alguma sugestão?

Estou criando essa função no oracle, pois preciso que uma view que utilizo atualmente no SQL Server, funcione no Oracle.

CREATE OR REPLACE FUNCTION DATEPART( VarPart, var_string1 DATE)
RETURN varchar AS

var_DatePart varchar2(32767);
BEGIN
IF VarPart = ‘YEAR’ THEN
var_DatePart := TO_CHAR (var_string1,‘yyyy’);
END IF;
IF VarPart = ‘MONTH’ THEN
var_DatePart := TO_CHAR (var_string1,‘MM’);
END IF;
IF VarPart = ‘DAY’ THEN
var_DatePart := TO_CHAR (var_string1,‘DD’);
END IF;

RETURN var_DatePart;
END;

Grato,

Juliano

Pessoal ja solucionei o meu problema,
caso alguem precise criei uma função para Month, Day e YEAR retornando-os com aspas.