언어 매뉴얼 - XPath UDF

언어 매뉴얼 - XPath UDF (Language Manual - XPath UDF)

XPath UDF는 XML 데이터에서 원하는 노드나 값을 추출할 때 사용하는 함수들이에요. Hive에서 xpath, xpath_string, xpath_int, xpath_double, xpath_float, xpath_long, xpath_short, xpath_boolean, xpath_number 같은 함수를 제공합니다.

출처: 문서

본문

Hive의 XPath 관련 UDF를 설명합니다.

주요 함수

함수 설명
xpath(xml, xpath) XPath에 해당하는 노드들의 배열을 반환
xpath_string(xml, xpath) XPath에 해당하는 첫 번째 요소의 문자열 값을 반환
xpath_number(xml, xpath) XPath에 해당하는 값의 숫자(배열)를 반환
xpath_int(xml, xpath) 정수 형태의 값을 반환
xpath_long(xml, xpath) long 형태의 값을 반환
xpath_short(xml, xpath) short 형태의 값을 반환
xpath_double(xml, xpath) double 형태의 값을 반환
xpath_float(xml, xpath) float 형태의 값을 반환
xpath_boolean(xml, xpath) boolean 형태의 값을 반환

예시

SELECT xpath_string('<a><b>Hello</b></a>', 'a/b');  -- Hello
SELECT xpath_int('<a><b>123</b></a>', 'a/b');       -- 123
SELECT xpath('<a><b>1</b><b>2</b></a>', 'a/b');     -- ["1","2"]

주의 사항

  • XML 입력이 올바른 형식이어야 하며, 잘못된 XPath를 지정하면 빈 결과나 오류가 발생할 수 있습니다.
  • 각 함수의 반환 타입에 맞춰 XPath 결과를 사용해야 합니다.

참고: 더 상세한 함수별 시그니처와 예제는 원문 문서를 참고하세요.

더 알아보기 (Learn more)

  • XML 데이터를 자주 다룬다면 정규식 함수(regexp_extract)와 XPath 함수를 상황에 맞게 비교해 보세요. 구조화된 XML이라면 XPath가 더 안정적일 수 있어요.