As funções do PostgreSQL são procedimentos armazenados que permitem que você armazene um conjunto de operações de banco de dados em uma função que pode ser chamada repetidamente sem precisar digitar instruções manualmente todas as vezes. É um ótimo utilitário para reutilização de banco de dados e automação em aplicativos. Você também pode usá-lo para criar funções definidas pelo usuário e procedimentos armazenados. Veja como usar o comando create function do PostgreSQL.
Função de criação do PostgreSQL
Aqui está a sintaxe do PostgreSQL CREATE FUNCTION.
CREATE [OR REPLACE] FUNCTION function_name (arguments) RETURNS return_datatype AS $variable_name$ DECLARE declaration; [...] BEGIN < function_body > [...] RETURN { variable_name | value } END; LANGUAGE plpgsql;
Na consulta acima, você precisa especificar
nome_função – nome da função
[OR REPLACE] – palavra-chave opcional para modificar a função existente
function_body – conjunto de operações a serem executadas como parte da função
retornar declaração com ou sem uma variável/valor de retorno
declarar variáveis para armazenar valores de função
idioma – PostgreSQL permite definir funções em várias linguagens como PostgreSQL, SQL, C, Python e outras linguagens procedurais.
Bônus de leitura:PostgreSQL Criar Esquema
Exemplo de CRIAR FUNÇÃO
Aqui está um exemplo de como criar um procedimento armazenado no PostgreSQL. Digamos que você tenha a seguinte tabela vendas
postgres=# select * from sales; order_date | sale ------------+------ 2020-04-01 | 210 2020-04-02 | 125 2020-04-03 | 150 2020-04-04 | 230 2020-04-05 | 200 2020-04-10 | 220 2020-04-06 | 250 2020-04-07 | 215 2020-04-08 | 300 2020-04-09 | 250
Bônus de leitura:PostgreSQL Criar banco de dados
Vamos criar uma função total() que conte o número de linhas em vendas tabela
postgres=# CREATE OR REPLACE FUNCTION total() RETURNS integer AS $total$ declare total integer; BEGIN SELECT count(*) into total FROM sales; RETURN total; END; $total$ LANGUAGE plpgsql; CREATE FUNCTION
Na consulta acima, definimos a função total() de forma que ela execute a consulta SQL mencionada entre BEGIN e END e armazene o resultado na variável declarada $total , que é retornada após a execução da função.
Veja como executar a função PostgreSQL
postgres=# select total(); total ------- 10
Bônus de leitura:Como criar histograma no PostgreSQL
Esperamos que o tutorial acima o ajude a criar uma função definida pelo usuário e um procedimento armazenado no PostgreSQL.
A Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!