CriandoBits
Identifique-se Entrar Esqueceu a senha? Esqueci minha senha

SQL Server - Função escalar

Por Benedito Silva Júnior - publicado em 26/07/2016


Função escalar são funções definidas pelo usuário que retornam um valor único de dados do tipo definido na cláusula RETURNS. Para uma função escalar embutida, não há um corpo de função; o valor escalar é o resultado de uma única instrução.

Para uma função escalar de várias instruções, o corpo da função, definido em um bloco BEGIN...END, contém uma série de instruções Transact-SQL, que retornam o valor único. O tipo de retorno pode ser qualquer tipo de dados, exceto text, ntext, image, cursore timestamp.

Sintaxe:

    CREATE FUNCTION nome_da_função (parâmetros)
    RETURNS tipo_de_dados_retorno
    AS
    BEGIN
    	bloco de códigos
        RETURN expressão_retorno
    END

Exemplo:

//função recebe parâmetro do tipo VARCHAR CREATE FUNCTION media_alunos(@nome VARCHAR(50)) RETURNS REAL // retorna valor do tipo REAL AS BEGIN DECLARE @media REAL // declara variável do tipo REAL SELECT @media = (nota1 * 2 + nota2 + nota3 + nota4)/5.00 // calcula média FROM notas_alunos WHERE nome = @nome // filtro - pega nome passado por parâmetro RETURN @media // retorna média END

Para chamar a função basta digitar:

SELECT dbo.media_alunos('nome_do_aluno')


 
VoltarTopo