15 Comentários


  1. Renan

    Para todo desenvolvedor, quando a palavra “Date” é mencionada, já sobe aquele pulguinha na orelha(conversões, possui ou não horas, cálculos, períodos,etc). Toda vez que eu tinha que realizar cálculos com datas, era necessário migrar os dados para outra plataforma e realizar a implementação! Agora, graças a esse artigo, eu sei da existência dessas funções que irão me ajudar muito!
    Obrigado Lucas!

    Responder
    1. admin

      Oi Renan, tudo bem?

      Muito obrigado pelo seu comentário ficamos muito felizes de ter ajudado você a melhorar os seus conhecimentos

      abs
      William Miranda

      Responder
  2. Diogo Alves

    O artigo abrange a grande maioria das funções relacionadas a “date“ no banco de dados Oracle, Parabéns Lucas!

    Responder
  3. Daniel Figueira

    Ótimo post, poderia dar algum exemplo de operações com datas para contabilizar horas ?

    Obrigado.

    Responder
  4. Tarcisio

    Rapaz, isso resolveu todas minhas dúvidas sobre o assunto, obrigado.

    Responder

    1. Tarcisio,

      Ficamos muito felizes mesmo com este seu comentário e esperamos que outros artigos do aprendaplsql possam te ajudar na sua acensão profissional.

      abs
      William Miranda

      Responder
  5. Marcia

    Willian poderia explicar por favor a Lógica para obter semestre ,bimestre,trimestre .Por que subtrair 1 da data atual.
    SELECT TRUNC((TO_CHAR (sysdate, ‘MM’) – 1) / 3) + 1 AS trimestre FROM DUAL;

    Responder
    1. admin

      Oi Marcia, tudo bem?

      Ali você está subtraindo do mês e não da data completa para no caso de ser o mês 3 por exemplo teríamos como resultado( 3/3 = 1 + 1 = 2) e sairia no segundo semestre e a lógica estará errada!

      abs
      William Miranda

      Responder
    2. Patrick da Silva Cardoso

      Oi Márcia

      Isso você resolve assim:

      SELECT CEIL(EXTRACT(MONTH from sysdate)/2) as bimestre FROM DUAL;
      SELECT CEIL(EXTRACT(MONTH from sysdate)/3) as trimestre FROM DUAL;
      SELECT CEIL(EXTRACT(MONTH from sysdate)/4) as quadrimestre FROM DUAL;
      SELECT CEIL(EXTRACT(MONTH from sysdate)/6) as semestre FROM DUAL;

      Cordialmente

      Patrick Cardoso

      Responder
  6. Leandro Santos

    Melhor artigo de datas que encontrei na internet. Parabéns!! Me ajudou de verdade.

    Responder
  7. Mateus Mattielo Nickhorn

    Bom dia Lucas, muito bom o seu artigo, mas eu tenho uma dúvida (tomara que tu visualize e responda).

    Eu preciso pegar informações de uma tabela que pertençam ao intervalo da semana em que eu estou no momento, por exemplo, se eu fizer a consulta no dia de hoje que é 17/07/2017 eu preciso que o intervalo de busca seja entre o dia 16/07 (domingo) até 22/07 (sábado), ou seja

    SELECT * FROM tabelaqualquer WHERE data >= 16/07/2017 and data <= 22/07/2017.

    Conseguiria me ajudar com isso? Obrigado por enquanto

    Responder
    1. admin

      Oi Matheus, tudo bem?

      O Lucas pediu para te responder com o código para fazer essa função funcionar 🙂
      select * from tabela x
      where x.campo_data between
      sysdate + (7-to_char(sysdate,’D’)) – 6 and sysdate + (7-to_char(sysdate,’D’))

      abs
      William Miranda

      Responder
      1. Mateus Mattielo Nickhorn

        Olá Willan, muitíssimo obrigado, deu super certo. Um grande abraço pra vocês

        Responder

Deixe uma resposta para Marcia Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *