Pular para o conteúdo principal
Documentos
Sintaxe básicaFunções JSONAcionadoresGerenciamento de tabelas e esquemasFunções de cadeia de caracteresFunções matemáticasFunções de dataBancos de dadosÍndices

PostgreSQL FLOOR

A função `FLOOR` no PostgreSQL é uma função matemática utilizada para retornar o maior número inteiro menor ou igual a um valor numérico especificado. É comumente usado em cenários em que é necessário arredondar para o número inteiro mais próximo.

Uso

A função `FLOOR` é normalmente usada quando você precisa desconsiderar a parte fracionária de um número e obter sua parte inteira para cálculos ou análise de dados. É especialmente útil em cálculos financeiros ou no gerenciamento de índices. O `FLOOR` faz parte das funções matemáticas SQL padrão do PostgreSQL, garantindo confiabilidade e padronização.

FLOOR(numeric_expression)

Nessa sintaxe, `expressão_numérica` é o número para o qual você deseja encontrar o maior número inteiro menor ou igual a ele. Os tipos de dados compatíveis com `numeric_expression` incluem `double precision`, `numeric` e outros tipos numéricos.

Exemplos

1. Uso básico

SELECT FLOOR(4.75);

Nesse exemplo, a função retorna `4`, pois é o maior número inteiro menor ou igual a `4,75`.

2. Usando FLOOR com números negativos

SELECT FLOOR(-3.14);

Aqui, a função retorna `-4`, pois `-4` é o maior número inteiro menor que `-3,14`.

3. Aplicando o FLOOR em uma consulta de tabela

SELECT product_id, FLOOR(price) AS rounded_price
FROM products;

Essa consulta recupera o ID de cada produto e seu preço arredondado para o número inteiro mais próximo, o que é útil para criar listas de preços simplificadas.

Dicas e práticas recomendadas

  • Garantir o tipo de dados numéricos. Use `FLOOR` em tipos de dados numéricos para evitar erros inesperados ou conversões de tipos.
  • Combine com outras funções. Use `FLOOR` em combinação com outras funções matemáticas como `CEIL` ou `ROUND` para cálculos complexos.
  • Considere o desempenho. Ao usar o `FLOOR` em grandes conjuntos de dados, certifique-se de que ele não se torne um gargalo de desempenho, especialmente em instruções SELECT.
  • Fique atento aos aspectos negativos. Lembre-se de que `FLOOR` diminuirá o valor inteiro para números negativos, o que pode diferir das expectativas.
  • Impacto nas colunas indexadas. Esteja ciente de que o uso de `FLOOR` em colunas indexadas pode afetar a otimização e o desempenho da consulta.