Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Extrair "dia", "mês" e "ano" de uma data através do script.

Olá amigos, preciso extrair "dia", "mês" e "ano" de uma data através do script. Pois pretendo criar uma dimensão por hierarquia, porém a data está no formato "dd/mm/aaaa".

Labels (1)
15 Replies
Anonymous
Not applicable
Author

Elias, boa tarde.

day (campodata) as dia,

month (campodata) as mês,

year (campodata) as ano


Faça isso em seu script.


Abs,

Not applicable
Author

Olá Alex, estou carregando as tabelas direto pelo script, através do comando "SQL SELECT", onde devo inserir os comandos sugeridos, entre a conexão com o banco e o primeiro select?

Exemplo:

LIB CONNECT TO 'bancodedados';

day (DATAPEDIDO) as dia,

month (DATAPEDIDO) as mês,

year (DATAPEDIDO) as ano

SQL select

  p.CODIGOPROPOSTA , p.CODIGOPEDIDO , case when p.codigopedido > 0 then p.TOTAL_DESCONTO else 0  end as valorpedido,

  p.TOTAL_DESCONTO  vl_proposta ,

  p.C_CODIGOVENDEDOR , p.codigocliente , p.data  dataproposta , p.DATAPEDIDO from proposta p;

Anonymous
Not applicable
Author

Nessa parte do seu script você esta trazendo os dados certo ?

Você pode fazer isso na parte do tratamento  dos dados e no arquivo final

Consegue entender?.

Marcio_Campestrini
Specialist
Specialist

Elias

Você está conectando no Oracle?

Se sim, pode fazer o seguinte:

select

  p.CODIGOPROPOSTA , p.CODIGOPEDIDO , case when p.codigopedido > 0 then p.TOTAL_DESCONTO else 0  end as valorpedido,

  p.TOTAL_DESCONTO  vl_proposta ,

  p.C_CODIGOVENDEDOR , p.codigocliente , p.data  dataproposta , p.DATAPEDIDO,

To_Char(p.DATAPEDIDO, 'yyyy')     AnoPedido,

To_Char(p.DATAPEDIDO, 'mm')      MesPedido,

To_Char(p.DATAPEDIDO, 'dd')        DiaPedido

from proposta p;

Se for outro banco basta ver a sintaxe correta para o banco em questão.

Márcio Rodrigo Campestrini
Not applicable
Author

Obrigado Márcio, o banco é Firebird.

Anonymous
Not applicable
Author

Elias,

Conseguiu ?


Se sim, marque uma resposta como correta.

Not applicable
Author

no firebird ficaria assim:


EXTRACT(YEAR FROM DATA_VENDA) AS ANO,

EXTRACT(MONTH FROM DATA_VENDA) AS MES,

EXTRACT(DAY FROM DATA_VENDA) AS DIA,

Not applicable
Author

Obrigado a todos.

Deu certo Eduardo, valeu.

Abraço.

Anonymous
Not applicable
Author

Elias,

Marque uma respostas como correta.

Abs