>데이터 베이스 >MySQL 튜토리얼 >SparkSQL은 다양한 버전의 하위 쿼리를 어떻게 처리합니까?

SparkSQL은 다양한 버전의 하위 쿼리를 어떻게 처리합니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-03 14:24:39247검색

How Does SparkSQL Handle Subqueries in Different Versions?

SparkSQL 하위 쿼리 지원

Spark에서는 하위 쿼리가 현재 제한된 형식으로 지원됩니다. Spark 2.0 이상 버전은 상관된 변형과 상관되지 않은 변형을 모두 포함하여 하위 쿼리에 대한 확장된 지원을 제공합니다. 그러나 Spark 2.0 이전 버전에서는 Hive 0.12 이하 버전과 유사하게 FROM 절에서만 하위 쿼리가 허용됩니다.

WHERE 절 오류

Spark 셸에서 제공된 쿼리를 실행할 때 발생하는 오류는 이전 버전의 Spark에서는 WHERE 절의 하위 쿼리가 지원되지 않기 때문입니다. 버전 2.0. 오류는 파서가 괄호를 예상했지만 대신 MAX 함수를 발견했다는 점을 강조하며 이는 구문이 올바르지 않음을 나타냅니다.

Spark 2.0 지원

Spark 2.0 이상 , 하위 쿼리는 FROM 및 WHERE 절 모두에서 사용할 수 있습니다. 제공된 쿼리는 다음과 같이 다시 작성할 수 있습니다.

sqlContext.sql("select sal from samplecsv where sal < (select max(sal) from samplecsv)").collect().foreach(println)

Spark < 2.0

2.0 이전 Spark 버전에서는 하위 쿼리가 FROM 절에서만 지원됩니다. 하위 쿼리가 외부 쿼리의 열을 참조하는 상관 하위 쿼리는 지원되지 않습니다. 비슷한 기능을 얻으려면 대신 데카르트 조인을 사용해야 합니다.

위 내용은 SparkSQL은 다양한 버전의 하위 쿼리를 어떻게 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.