Create - function,view,label

Rotinas Armazenadas – Funções (CREATE FUNCTION) em MySQL

CREATE FUNCTION nome_função (parâmetros)
RETURNS tipo_dados
código_da_função;

Começamos com este código para analisarmos ele, por exemplo, o “CREATE FUNCTION”, significa criar função, ou seja, precisamos dele para iniciarmos uma criação de função.

Logo após, você porderá nomear á sua vontade e ali onde você está vendo sobre “(parâmetros)” você adicionará suas icógnitas da função, como: a = DECIMAL(13,9), b int), as letras em si poderão ser alteradas, nomeamos para melhor entendimento :) .

Agora na segunda linha, temos o “RETURNS”, que significa oq a função irá retornar na tela, ou seja, se colocarmos “RETURNS int”, o resultado da soma, ou subtração desta função será em número inteiro, ai você pode brincar e alterar o tipo de dados, á sua escolha.

E na última linha, temos a essência da função, é nesta terceira linha que podemos adicionar uma função matemática, como adição, subtração, multiplicação e etc.

CREATE FUNCTION fn_teste (a DECIMAL(10,2), b INT)
RETURNS INT
RETURN a * b;

Aqui temos um exemplo, para você querido(a) aluno de banco de dados compreender a sua aula chata de banco de dados, neste código você percebe o exemplo da explicação acima como citamos, sobre parâmetros, o retorno e o código em si da função.
SELECT fn_teste(2.5, 4) AS Resultado;
Para aplicarmos valores á esta função, utilizamos este código acima, você aluno iniciante em mysql deve pelo menos no mínimo saber o que significa o “SELECT”, para os que não sabem kkkkk, irei explicar, o select irá selecionar os valores dentro do parêntese, ou seja se colocarmos (2,5, 4), a função irá multiplicar 2,5 por 4, ou seja, teremos como resultado, 10, ooooohhhhhhhhhh.
O código “AS”, em inglês siginifica apelido, ou seja, estamos apenas apelidando este código de “Resultado”, o nome fica a seu critério amigo, sinta-se feliz XD.
Agora iremos apresentar alguns exemplos de códigos já feitos e sua funcionalidade.

SELECT Nome_Livro, fn_teste(Preco_Livro, 6) AS ‘Preço de 6 unidades’
FROM tbl_Livro
WHERE ID_Livro = 2;

- Usando o banco de dados de testes db_biblioteca. Criamos esta função que consultará um livro a partir de seu código e retornará o preço total de 6 unidades desse livro.

CREATE FUNCTION fn_verPreço (a SMALLINT)
RETURNS VARCHAR(60)
RETURN
(SELECT CONCAT('O preço do livro ', Nome_Livro, ' é ', Preco_Livro)
FROM tbl_livro
WHERE ID_livro = a);

– Criamos esta função que mostrará esta seguinte mensagem “O preço do livro XXX é R$ YYY” para os livros do banco de dados, consultados pelo seu ID (XXX é o nome do livro, e YYY o seu preço).

Para finalizarmos, se você meu caro amigo iniciante em mysql fez merda e quer deletar tudo e refazer do zero para assim aprender de vez como se cria uma função, abaixo está o código que irá lhe salvar, não precisa me agradecer amigo, divirta-se !

DROP FUNCTION nome_função;

Espero ter ajudado você amigo, no inicio senti a mesma dificuldade que a sua em aprender tal assunto, porém com pouco estudo conseguir aprender e tirar boas notas, espero que com você funcione também, até mais amigo :D .

Referências: DOS REIS, Fábio. MySQL – Rotinas Armazenadas – Funções (CREATE FUNCTION). Disponível em: <http://www.bosontreinamentos.com.br/mysql/mysql-rotinas-armazenadas-funcoes-create-function-33/>. Acesso em: 12 dez. 2019. | Texto dirigido por: Walter Vieira, Máximo Sussumu, Erison Negrão. |Revisado e corrigido por Octávio Jorge e Eduarda Morais.

Comments