Arquivos da categoria: SQL

Retornar data truncada (date_trunc) no postgresql.

A função date_trunc no postgres retorna a data truncada.

Modo de uso:

date_trunc('campo', origem)

Os valores validos para o ‘campo’ são:

microseconds
milliseconds
second
minute
hour
day
week
month
quarter
year
decade
century
millennium

Exemplo de utilização:

 
SELECT date_trunc('hour', '2014-02-16 20:38:40');
-- Retorna: 2014-02-16 20:00:00 (A data preenchida até a hora)
 
SELECT date_trunc('year', '2014-02-16 20:38:40');
-- Retorna: 2014-01-01 00:00:00 (A data preenchida até o ano)

Ordenando resultados de consultas com valores numéricos

O caso não é incomum, as vezes precisamos ordenar uma consulta por determinada coluna de caracteres, mas que contenha valores numéricos. Se você ordernar um campo desse tipo os resultados irão sair assim:

SELECT numerocontrato FROM contrato ORDER BY numerocontrato ASC

resultado:
* 1
* 10
* 11
* 123
* 1234
* 2
* 25
* 253
* 34

Para resolver esse problema use a função ABS(), assim:

SELECT numerocontrato FROM contrato ORDER BY ABS(numerocontrato) ASC