Pular para o conteúdo

Evitando erros ao indexar campos timestamp em SQL

Dica publicada em Banco de Dados / Postgres
Evaldo Barbosa evaldobarbosa
Hits: 7.341 Categoria: Banco de Dados Subcategoria: Postgres
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Evitando erros ao indexar campos timestamp em SQL

Eu tive um grande problema com um campo "timestamp" e que consiste no seguinte: uma função que criei fazia uma busca em várias tabelas e usava como restrição algo como:

to_char(campo_tmp)::date = CURRENT_DATE

E isso me trazia um prejuízo muito grande, pois a consulta durava entre 900ms e 1.400ms.

A dica é a seguinte: ao fazer buscas, principalmente se for um "count(*)" em campos timestamp, veja se são extremamente necessárias, pois se precisar indexá-las terá problemas, já que indexação com funções "to_char" ou "date_trunc" - que necessitam de dados externos como locale - não funcionam. Essas indexações devem ser feitas com dados imutáveis.

A melhor coisa a fazer é separar data e hora em campos diferentes que indexá-los um a um. Assim você evita problemas e ganha muitíssimo em desempenho.

O resultado pra mim foi uma redução de quase 1.400ms para 0.32ms.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Solucionando erro de ArrayIterator que não recebe array

Selecionando todos os checkboxes a partir de um principal com JavaScript

Função SQL replace: corrigindo inserções equivocadas

Instalação e configuração do Postgresql + Pgadmin3 LocalHost no Fedora

Novo site sobre PostgreSQL

Permitindo conexão ao banco no PostreSQL 8.3

Instalação do PostgreSQL no CoLinux-Debian

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.