Logo

Firebird: Linguagem PSQL

Otimização e centralização de regras de negócio com Procedural SQL.

Funções PSQL Úteis

Confira abaixo uma coleção de funções PSQL práticas e testadas para uso no FirebirdSQL. Cada função resolve problemas comuns do dia a dia no desenvolvimento e administração de bancos de dados.

O que são Funções e Procedimentos PSQL?

O PSQL (Procedural SQL) é a extensão da linguagem SQL do Firebird que permite a criação de rotinas complexas diretamente no banco de dados. Permite criar Stored Procedures, Triggers, Stored Functions e tratamento de exceções, reduzindo o tráfego de rede e centralizando regras de negócio.

Como extrair apenas o texto de um conteúdo RTF

Função GET_UNRTF para extrair texto puro de conteúdos RTF, removendo todas as tags de formatação. Útil para tornar textos RTF pesquisáveis e analisáveis.

Como extrair apenas o texto de um conteúdo HTML

Função GET_UNHTML que remove todas as tags HTML de um conteúdo, retornando apenas o texto puro. Mais simples que a extração de RTF, envolve apenas remover o que está entre os delimitadores "<" e ">".

Converter um texto em NUMERIC(18,4) ou NUMERIC(18,2)

Função STR_TO_NUMERIC4 para converter strings formatadas (como 'R$ 1.123,4567') em valores numéricos. Analisa a string da direita para esquerda para determinar o separador decimal.

Arredondamento do tipo ABNT em itens de serviço NFs

Função GET_ROUND_AS_ABNT que aplica a norma ABNT para arredondamento de preços em itens de serviço de Notas Fiscais. Resolve o caso especial onde números pares seguidos de 5 e zeros não são arredondados.

Retornando apenas dígitos válidos de uma string

Função STR_DIGITS que extrai apenas os caracteres desejados de uma string. Permite definir quais caracteres são válidos, útil para limpar telefones, CPF, CNPJ, CEP e outros dados formatados.

Colocando aspas simples numa string que talvez já tenha aspas também

Função STR_QUOTED equivalente ao QuotedStr do Pascal. Coloca uma string entre aspas simples e opcionalmente duplica aspas internas para uso seguro em comandos SQL com EXECUTE STATEMENT.

Como converter um numero para texto formatado

Função GET_FORMAT_FLOAT para formatar números com separadores de milhar e decimal. Suporta arredondamento e permite personalizar os separadores, transformando 123456789.0987654 em '123.456.789,10'.

Pegando o primeiro dia do mês de uma determinada data

Função GET_FIRST_DAY_OF_MONTH que retorna o primeiro dia do mês de uma data em formato timestamp. Trabalha em conjunto com GET_LAST_DAY_OF_MONTH para consultas de períodos mensais.

Pegando o ultimo dia do mês de uma determinada data

Função GET_LAST_DAY_OF_MONTH que retorna o último dia do mês de uma data em formato timestamp. Útil para consultas de fechamento mensal e períodos que vão do dia 01 até o final do mês.

Conclusão

Dominar o PSQL transforma o banco de dados de um mero repositório de tabelas em uma camada inteligente da aplicação. Isso resulta em sistemas mais rápidos, seguros e fáceis de manter a longo prazo.

← Voltar para Firebird