복붙노트

[HADOOP] HIVE에서 날짜를 빼는 방법

HADOOP

HIVE에서 날짜를 빼는 방법

나는 HIVE에서 데이트 한 달을 빼는 데 도움이되는 방법을 찾고있다.

날짜가 2015-02-01입니다. 이제 결과가 2014-12-01이되도록이 날짜에서 2 개월을 빼야합니다.

너희들 여기서 나를 도와 줄 수 있니?

해결법

  1. ==============================

    1.

     select add_months('2015-02-01',-2);
    

    결과 월의 첫날로 돌아 가야 할 경우 :

     select add_months(trunc('2015-02-01','MM'),-2);
    
  2. ==============================

    2.add_months date 함수를 시도하고 -2 개월을 전달하십시오. 내부적으로 add_months는 (음의 정수를 전달하여) Java Calendar.add 메소드를 사용하여 더하기 또는 빼기를 지원합니다.

    add_months date 함수를 시도하고 -2 개월을 전달하십시오. 내부적으로 add_months는 (음의 정수를 전달하여) Java Calendar.add 메소드를 사용하여 더하기 또는 빼기를 지원합니다.

    https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions

  3. ==============================

    3.- 날짜 형식이 YYYY-MM-DD 형식 인 경우 하이브에서 월 및 연도의 차이를 사용하기가 정말 쉽습니다.

    - 날짜 형식이 YYYY-MM-DD 형식 인 경우 하이브에서 월 및 연도의 차이를 사용하기가 정말 쉽습니다.

    from_unixtime (unix_timestamp (2015-02-01, 'yyyy-mm-dd') - 2 * 30 * 24 * 60 * 60, 'yyyy-MM-dd');

  4. from https://stackoverflow.com/questions/38221393/how-to-subtract-months-from-date-in-hive by cc-by-sa and MIT license