Irei mostrar como criar uma função no SQL Server e como utilizar a mesma.

A função que iremos criar serve para contar quantas vezes uma determinada letra aparece em uma string.

Criando tabela para utilizarmos em nosso exemplo:


CREATE TABLE TESTE
(
 CODIGO INT NOT NULL,
 CAMPO1 VARCHAR(50) NULL,
 CAMPO2 VARCHAR(50) NULL,
 CAMPO3 VARCHAR(50) NULL,
);

Inserir informações para nosso exemplo:


INSERT INTO TESTE (CODIGO, CAMPO1, CAMPO2, CAMPO3) VALUES
 (1, 'TESTE DE INSERT CAMPO 1', 'VAMOS FAZER SELECT PARA TESTE',
 'T-SQL');

Criando a função:


CREATE FUNCTION F_CONTADOR
( @fEntrada VARCHAR(8000), @fLocaliza VARCHAR(100) )
RETURNS INT
BEGIN

RETURN (LEN(@fEntrada) -
 LEN(REPLACE(@fEntrada, @fLocaliza, ''))) /
 LEN(@fLocaliza)

END
GO;

Como utilizar nossa função:


SELECT DBO.F_CONTADOR(CAMPO1,'S') AS QTDE, CAMPO1 FROM TESTE

 

A função recebe como parâmetro o campo que iremos realizar a busca, e o que iremos buscar.

 

Resultado:


1 comentário

Glória · 25 de dezembro de 2016 às 23:21

Estava procurando exatamente como fazer isso. Obrigada por me ajudar!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *