Eu n?o cheguei a testar t?!? Fiz baseado no seu problema!!
A? vai:
Primeiro voc? cria uma procedure assim:
--RETORNA QUANTAS VEZES FIND_TXT APARECE DENTRO DE SEQ_TXT
PROCEDURE CONTA_CHAR(SEQ_TXT IN VARCHAR2, FIND_TXT IN VARCHAR2) IS
V_NUMBER NUMBER;
TAM NUMBER;
POS NUMBER;
BEGIN
V_NUMBER := 0; POS := 0;
TAM := LENGTH(SEQ_TXT);
IF TAM > 0 THEN
LOOP
POS := INSTR(SEQ_TXT,FIND_TXT,POS + 1);
IF POS > 0 THEN
V_NUMBER := V_NUMBER + 1;
ELSE
EXIT;
END IF;
END LOOP;
END IF;
RETURN V_NUMBER;
END;
E…usando seu exemplo:
DECLARE
QUANTIDADE NUMBER;
BEGIN
QUANTIDADE := CONTA_CHAR('Teste de contagem',' ');
END;
A VARI?VEL QUANTIDADE SER? = 2
BEM COMO SE TEMOS AS VARI?VEIS:
NOME = ‘GRUPO DE PROFISSIONAIS’
ID = ‘SS’
PODEMOS APLICAR:
QUANTIDADE := CONTA_CHAR(NOME,ID);
A VARI?VEL QUANTIDADE DEVE SER = 1
ESPERO TER AJUDADO.
ABRA?OS.