Funções encadeadas |
As funções de linha podem ser progressivamente encadeadas, umas dentro das outras. A avaliação é feita das funções interiores para as funções exteriores.
Como faria para saber quantas vezes aparece um determinado caracter dentro de uma string? Uma solução é encadear as funções LENGTH e TRANSLATE. No exemplo abaixo o caracter A é substituido por A (não muda) e S por nada (é retirado). A diferença de comprimentos dá o número de S's!
select dname, LENGTH(dname), LENGTH(dname)-LENGTH(TRANSLATE(dname,'AS','A')) from dept; |
DNAME LENGTH(DNAME) LENGTH(DNAME)-LENGTH(TRANSLATE(DNAME,'AS','A')) -------------- ---------------------- ----------------------------------------------- ACCOUNTING 10 0 RESEARCH 8 1 SALES 5 2 OPERATIONS 10 1 4 rows selected |
Realizado por Turtle Learning ®. Última alteração em 2011-02-26