Spark SQL에서 to_date () 및 add_months 함수를 적용하는 동안 오류가 발생했습니다.

Arvinth

나는 다음 하이브 테이블을 가지고 있습니다. 열에 cycle_monthYYYYMM 형식의 값이 있습니다.

+---------------+--------------+------------+
| column_value  | metric_name  |cycle_month |
+---------------+--------------+------------+
| A37B          | Mean         | 202005     |
| ACCOUNT_ID    | Mean         | 202005     |
| ANB_200       | Mean         | 202005     |
| ANB_201       | Mean         | 202006     |
| AS82_RE       | Mean         | 202006     |
| ATTR001       | Mean         | 202007     |
| ATTR001_RE    | Mean         | 202007     |
| ATTR002       | Mean         | 202008     |
| ATTR002_RE    | Mean         | 202008     |
| ATTR003       | Mean         | 202009     |
| ATTR004       | Mean         | 202009     |
| ATTR005       | Mean         | 202009     |
| ATTR006       | Mean         | 202010     |

사용자가 전달한 cycle_month 값과 cycle_month-4 개월 사이의 값을 가져 오려면 동적 쿼리를 작성해야합니다.

Spark SQL 쿼리 :

select column_name, metric_name from table where cycle_month between add_months(to_date(202010,'YYYYMM'),-4) and 202010  

오류 발생

[오류 10015] : 1 행 : 323 인수 길이 불일치 ''YYYYMM '': to_date ()에는 1 개의 인수가 필요하고 2 개를 얻었습니다 (상태 = 21000, 코드 = 10015).

예상 출력 :

+---------------+--------------+------------+
| column_value  | metric_name  |cycle_month |
+---------------+--------------+------------+
| ANB_201       | Mean         | 202006     |
| AS82_RE       | Mean         | 202006     |
| ATTR001       | Mean         | 202007     |
| ATTR001_RE    | Mean         | 202007     |
| ATTR002       | Mean         | 202008     |
| ATTR002_RE    | Mean         | 202008     |
| ATTR003       | Mean         | 202009     |
| ATTR004       | Mean         | 202009     |
| ATTR005       | Mean         | 202009     |
| ATTR006       | Mean         | 202010     |

to_date기능은 입력 및 반환 등의 문자열 기대 date로 변경 기간에 YYYYMM사용 date_format마지막으로 캐스팅 기능 date에를 int.

Try with this query

select column_name, metric_name from table where cycle_month between int(date_format(add_months(to_date('202010','YYYYMM'),-4),'YYYYMM')) and 202010

UPDATE:

sql("select int(date_format(add_months(to_date('202010','YYYYMM'),-4),'YYYYMM'))").show()
#+------------------------------------------------------------------------------------------------+
#|CAST(date_format(CAST(add_months(to_date('202010', 'YYYYMM'), -4) AS TIMESTAMP), YYYYMM) AS INT)|
#+------------------------------------------------------------------------------------------------+
#|                                                                                          201908|
#+------------------------------------------------------------------------------------------------+

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

다른 서버에서 avro 소스 및 싱크를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

C # 및 .NET 4.5를 사용하여 SSL 서버에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

kotlin에서 getter 및 setter를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

Java에서 16 진수를 위도 및 경도로 변환하는 동안 오류가 발생했습니다.

분류에서Dev

Firebase 알림에서 아이콘 및 소리를 수신하는 동안 오류가 발생했습니다.

분류에서Dev

Spark RDD에서 수집 작업을 수행하는 동안 오류가 발생했습니다.

분류에서Dev

R의 두 목록에 근사 함수를 적용하는 동안 오류가 발생했습니다.

분류에서Dev

Spark Streaming Kinesis 통합 : 작업자에서 LeaseCoordinator를 초기화하는 동안 오류가 발생했습니다.

분류에서Dev

C ++ Set 및 Vector에서 반복기를 역 참조하는 동안 오류가 발생했습니다.

분류에서Dev

getdate () 함수에서 변환하는 동안 오류가 발생했습니다.

분류에서Dev

다른 함수 내에서 함수를 momoizing하는 동안 여러 오류가 발생했습니다.

분류에서Dev

Error while applying to_date() and add_months function in Spark SQL

분류에서Dev

springboot에서 @Autowired를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

Pyspark에서 mapPartitions를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

Dart에서 매개 변수로 함수를 생성하는 동안 오류가 발생했습니다.

분류에서Dev

Python Jupyter에서 .difference () 함수를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

Qt에서 QGraphicsScene 함수를 사용하는 동안 오류가 발생했습니다.

분류에서Dev

namenode 및 datanode를 시작하는 동안 오류가 발생했습니다.

분류에서Dev

Typescript에서 RXJS와 함께 간격 및 맵을 사용하는 동안 유형 오류가 발생했습니다. 오류 코드 : ts (2740)

분류에서Dev

Typescript에서 RXJS와 함께 간격 및 맵을 사용하는 동안 유형 오류가 발생했습니다. 오류 코드 : ts (2740)

분류에서Dev

Linux에서 RODBC를 사용하여 SQL Server에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

Jenkins에서 mstest를 실행하는 동안 오류가 발생했습니다.

분류에서Dev

vba에서 sub를 호출하는 동안 오류가 발생했습니다.

분류에서Dev

VBA에서 Sub를 호출하는 동안 오류가 발생했습니다.

분류에서Dev

함수에서 SQL 내보내기로 리턴하는 동안 오류가 발생했습니다.

분류에서Dev

Python에서 C DLL 함수를 호출하는 동안 오류가 발생했습니다.

분류에서Dev

예측 함수에서 R의 DFA를 실행하는 동안 오류가 발생했습니다.

분류에서Dev

외부 C 함수에서 Modelica 레코드를 반환하는 동안 오류가 발생했습니다.

분류에서Dev

커서를 가져 오는 동안 오류가 발생했습니다.

Related 관련 기사

  1. 1

    다른 서버에서 avro 소스 및 싱크를 사용하는 동안 오류가 발생했습니다.

  2. 2

    C # 및 .NET 4.5를 사용하여 SSL 서버에 연결하는 동안 오류가 발생했습니다.

  3. 3

    kotlin에서 getter 및 setter를 사용하는 동안 오류가 발생했습니다.

  4. 4

    Java에서 16 진수를 위도 및 경도로 변환하는 동안 오류가 발생했습니다.

  5. 5

    Firebase 알림에서 아이콘 및 소리를 수신하는 동안 오류가 발생했습니다.

  6. 6

    Spark RDD에서 수집 작업을 수행하는 동안 오류가 발생했습니다.

  7. 7

    R의 두 목록에 근사 함수를 적용하는 동안 오류가 발생했습니다.

  8. 8

    Spark Streaming Kinesis 통합 : 작업자에서 LeaseCoordinator를 초기화하는 동안 오류가 발생했습니다.

  9. 9

    C ++ Set 및 Vector에서 반복기를 역 참조하는 동안 오류가 발생했습니다.

  10. 10

    getdate () 함수에서 변환하는 동안 오류가 발생했습니다.

  11. 11

    다른 함수 내에서 함수를 momoizing하는 동안 여러 오류가 발생했습니다.

  12. 12

    Error while applying to_date() and add_months function in Spark SQL

  13. 13

    springboot에서 @Autowired를 사용하는 동안 오류가 발생했습니다.

  14. 14

    Pyspark에서 mapPartitions를 사용하는 동안 오류가 발생했습니다.

  15. 15

    Dart에서 매개 변수로 함수를 생성하는 동안 오류가 발생했습니다.

  16. 16

    Python Jupyter에서 .difference () 함수를 사용하는 동안 오류가 발생했습니다.

  17. 17

    Qt에서 QGraphicsScene 함수를 사용하는 동안 오류가 발생했습니다.

  18. 18

    namenode 및 datanode를 시작하는 동안 오류가 발생했습니다.

  19. 19

    Typescript에서 RXJS와 함께 간격 및 맵을 사용하는 동안 유형 오류가 발생했습니다. 오류 코드 : ts (2740)

  20. 20

    Typescript에서 RXJS와 함께 간격 및 맵을 사용하는 동안 유형 오류가 발생했습니다. 오류 코드 : ts (2740)

  21. 21

    Linux에서 RODBC를 사용하여 SQL Server에 연결하는 동안 오류가 발생했습니다.

  22. 22

    Jenkins에서 mstest를 실행하는 동안 오류가 발생했습니다.

  23. 23

    vba에서 sub를 호출하는 동안 오류가 발생했습니다.

  24. 24

    VBA에서 Sub를 호출하는 동안 오류가 발생했습니다.

  25. 25

    함수에서 SQL 내보내기로 리턴하는 동안 오류가 발생했습니다.

  26. 26

    Python에서 C DLL 함수를 호출하는 동안 오류가 발생했습니다.

  27. 27

    예측 함수에서 R의 DFA를 실행하는 동안 오류가 발생했습니다.

  28. 28

    외부 C 함수에서 Modelica 레코드를 반환하는 동안 오류가 발생했습니다.

  29. 29

    커서를 가져 오는 동안 오류가 발생했습니다.

뜨겁다태그

보관