Tecnologia da Informação
PostgreSql - Exemplo date_part
A função date_part extrai parte de uma data ou intervalo. Vamos descrever 2 exemplos com esta função.
1º Exemplo: vamos extrair partes da data da coluna "data_exame" da tabela "tb_exame". A tabela contém informações da realização de exames em um laboratório.
Soluçãodate_part('parte_da_data', nome_da_coluna)- parte_da_data: podemos passar qual a parte da data que queremos, por exemplo, o dia 'day', ou o ano 'year', entre outros.
- nome_da_coluna: nome da coluna de uma tabela. Neste caso vamos escolher a coluna "data_exame" da tabela "tb_exame".
A sentença abaixo apresenta alguns argumentos que podem ser passados na função date_part.
SELECTpaciente_id,data_exame,/*exibe o dia do exame*/ date_part('day', data_exame) AS dia,/*exibe o mês do exame*/ date_part('month', data_exame) AS mes,/*exibe o ano do exame*/ date_part('year', data_exame) AS ano,/*exibe a hora do exame*/ date_part('hour', data_exame) AS hora,/*exibe o minuto do exame*/ date_part('minute', data_exame) AS minuto,/*exibe o segundo do exame*/date_part('second', data_exame) AS segundo,/*exibe os dias da semana que são representados por números inteiros de 0 até 6 *0 - domingo, 1 - segunda e assim sucessivamente até 6 - sábado */date_part('dow', data_exame) AS int_semanaFROM tb_exame;
Após a execução da sentença acima, temos o resultado exibido na imagem abaixo:
Segue uma breve descrição, de outros argumentos que podem ser passados na função date_part:
- century: século da data. O século para data "2012-11-13 07:14:24" é 21;
- decade: quantas décadas se passara a partir de 1 d.c. A década para data "2012-11-13 07:14:24" é 201. O resultado é a parte inteira da divisão do ano por 10, ou seja, 2012 / 10;
- doy:o dia do ano de (1-365) ou (1-366) bissexto. O dia do ano para data "2012-11-13 07:14:24" é 318;
- isodow: os dias da semana são representados por números inteiros de 1 até 7, ou seja, 1 para segunda, 2 para terça e assim sucessivamente até 7 para domingo. O dia da semana para a data "2012-11-13 07:14:24" é 2;
- quarter: divide o ano em quatro partes. Indica se a data está no 1º, 2º, 3º ou 4º trimestre. A data "2012-11-13 07:14:24" está no quarto trimestre , logo o argumento quarter retorna 4;
2º Exemplo: queremos saber quantos exames foram feitos por ano.
Solução: precisamos agrupar as datas por ano, logo vamos passar o "year" para a função "date_part".
SELECT
date_part('year', data_exame) AS ano,
/*A função COUNT faz a contagem*/
COUNT(*) AS quantidade
FROM tb_exame
/*Agrupa por ano*/
GROUP BY ano
/*Ordena por ano em ordem crescente*/
ORDER BY ano;
Após a execução da sentença acima, podemos visualizar o resultado na imagem abaixo:
Em breve, postarei mais exemplos de funções com data.
loading...
-
Mysql Sum - Soma
A função SUM retorna a soma de valores de uma coluna. SINTAXE SELECT SUM(nome_da_coluna) FROM nome_da_tabela; Para os 6 exemplos abaixo, utilizaremos a tabela "tb_fornecedor". Veja a imagem abaixo: Caso tenha interesse faça o download dos...
-
Postgresql Avg - Média
A função AVG retorna a média de valores de uma coluna. Serão descritos 6 exemplos de utilização desta função. Caso tenha interesse faça o download dos exemplos ou veja os scripts no github. SINTAXESELECT AVG(nome_da_coluna)...
-
Postgresql - Diferença Entre Datas
Neste post vamos apresentar 4 exemplos de como calcular a diferença entre datas. Caso tenha interesse, faça o download ou veja o script no Github. Para calcular a diferença entre duas datas, em dias, no postgresql utilizamos o operador aritmético...
-
Mysql - Extrair Data Com Extract
A função extract extrai parte de uma data ou intervalo. Vamos descrever 3 exemplos com a função extract. 1º Exemplo: vamos extrair partes da data da coluna "data_exame" da tabela "tb_exame". A tabela contém informações da realização...
-
Postgresql Sum - Soma
A função SUM retorna a soma de valores de uma coluna. SINTAXE SELECT SUM(nome_da_coluna) FROM nome_da_tabela; Para os 6 exemplos abaixo, utilizaremos a tabela "tb_fornecedor". Veja a imagem abaixo: 1º Exemplo Cenário: um funcionário quer...
Tecnologia da Informação