AM - AM ou PM
CC - Século
D - Dia da semana (1-7)
DAY - Dia da semana ('SUNDAY')
DD - Dia do mês (1-31)
DDD - Dia do ano
DY - Dia da semana abreviado ('SUN')
FM - Tira os blanks ou Zeros da esquerda
HH - Hora do dia (0-12)
HH24 - Hora do dia (0-24)
MI - Minutos da Hora
MM - Mês com 2 dígitos
MON - Mês abreviado ('NOV')
MONTH- Mês por extenso ('NOVEMBER')
PM - AM ou PM
RR - Ano com 2 dígitos - especial
RRRR - Ano com 4 dígitos
SS - Segundos do minuto(0 - 59)
SSSSS- Segundos do dia
W - Semana do Mês
WW - Semana do Ano
YEAR - Ano por extenso
YY - Ano com 2 dígitos
YYYY - Ano com 4 dígitos
[Dica] Formato de Datas - Consulta rápida
- dr_gori
- Moderador
- Mensagens: 5013
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Códigos:
- dr_gori
- Moderador
- Mensagens: 5013
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Outra coisa:
Nem sempre a gente sabe quais as configurações do banco que o nosso programa vai ser executado. Por exemplo: Tenho que mostrar o dia da semana ao usuário por extenso:
Como podem ver, o banco está em ingles. Mas eu forço a consulta pra ela sair em português - sem me preocupar em alterar nenhuma configuração! 
Nem sempre a gente sabe quais as configurações do banco que o nosso programa vai ser executado. Por exemplo: Tenho que mostrar o dia da semana ao usuário por extenso:
SQL> SELECT TO_CHAR( SYSDATE , 'DY' ) FROM DUAL;
TO_
---
FRI
SQL> SELECT TO_CHAR( SYSDATE , 'DY' , 'NLS_DATE_LANGUAGE=PORTUGUESE' ) FROM DUAL;
TO_
---
SEX

- dr_gori
- Moderador
- Mensagens: 5013
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Veja como não é preciso Upper ou INITCAP para ter a resposta em maiúsculo ou minúsculo:
Isso vale para os outros formatos!
SQL> SELECT TO_CHAR( SYSDATE , 'DY' ) FROM DUAL;
TO_
---
TER
SQL> SELECT TO_CHAR( SYSDATE , 'Dy' ) FROM DUAL;
TO_
---
Ter
SQL> SELECT TO_CHAR( SYSDATE , 'dy' ) FROM DUAL;
TO_
---
ter
- dr_gori
- Moderador
- Mensagens: 5013
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Já que o assunto é formatos, aí vão mais algumas coisas interessantes:
Tricks
Tricks
scott#PO7::SQL>alter session set NLS_NUMERIC_CHARACTERS=',.';
scott#PO7::SQL>alter session set NLS_CURRENCY='R$';
scott#PO7::SQL>column SAL format L99G999G999D09
-
- Rank: Estagiário Júnior
- Mensagens: 1
- Registrado em: Seg, 27 Ago 2012 4:09 pm
Se eu quiser que
Ao invés de receber sysdate, receba um parametro?
Posso colocar o parametro no lugar de sysdate?
Quero eu mesma digitar o mês, e não pegar o mês do meu PC.
COmo seria feito isso?
v_mês_ext := (to_char(Sysdate,'Month','nls_date_language =''brazilian portuguese'''));
Posso colocar o parametro no lugar de sysdate?
Quero eu mesma digitar o mês, e não pegar o mês do meu PC.
COmo seria feito isso?
-
- Rank: DBA Pleno
- Mensagens: 232
- Registrado em: Sex, 30 Mar 2007 7:26 pm
- Localização: Londrina - PR
Rafael O. Genaro
Basta passar uma data como parâmetro:
v_mês_ext := (to_char( to_date('01/05/2012', 'dd/mm/yyyy'),'Month','nls_date_language =''brazilian portuguese'''));
ou
declare
v_data date;
begin
v_data := to_date('01/09/2012', 'dd/mm/yyyy');
v_mês_ext := (to_char( v_data ,'Month','nls_date_language =''brazilian portuguese'''));
end;
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Bing [Bot] e 3 visitantes