Neste artigo, estou dando alguns exemplos de funções Oracle retornando valores numéricos.
Exemplo de função Oracle (número de retorno)
O exemplo de função Oracle a seguir retornará a porcentagem (número) do primeiro parâmetro, calculando-o com o segundo parâmetro.
CREATE OR REPLACE FUNCTION calc_percentage (p_1 IN NUMBER, p_2 IN NUMBER) RETURN NUMBER IS n_pct NUMBER := 0; BEGIN IF p_1 IS NOT NULL AND p_2 IS NOT NULL THEN n_pct := (p_1 * p_2) / 100; END IF; RETURN n_pct; END calc_percentage; /
Teste:
SELECT calc_percentage (40, 5) percentage FROM DUAL;
Saída:
PERCENTAGE ---------- 2 1 row selected.
No exemplo a seguir, a função retornará o número convertendo a data atual em um número sem nenhum parâmetro.
CREATE OR REPLACE FUNCTION date_in_number RETURN NUMBER IS BEGIN RETURN (TO_NUMBER (TO_CHAR (SYSDATE, 'yyyymmdd'))); END date_in_number; /
Teste:
SELECT date_in_number FROM DUAL;
Saída:
DATE_IN_NUMBER -------------- 20180807 1 row selected.
Veja também:
- Como executar uma função no Oracle
- Exemplos da função Oracle TO_DATE