2014-09-24 3 views
4

MsSql에서 사용할 수있는 "교차 적용"연산자에 대해 HANA sql에 대한 대안이 있습니까? 테이블의 값에 함수를 적용하는 방법이 있습니까? 예 :SAP HANA 교차 적용 대안

select T.*, F.* from T cross join someFunction(T.Value) F 
+1

SQL Server의'크로스 apply' 표준 SQL에서'측면 join'이라고합니다. 하나가 사용하는 것일 수도 있습니다. –

+0

어쩌면 아닙니다 (하지만 노래가 멋집니다) – florin

+0

결과 세트가 어떻게 보이는지 설명해 주시겠습니까? – AHaberl

답변

-1

SAP HANA에서 크로스 조인을 사용할 수 있습니다. 문제가되지 않습니다. 당신이 T.VALUE의 모든 항목에 함수를 적용 할 경우 그러나, 다음 쿼리는 다음과 같이해야합니다 :

select T.*, someFunction(T.Value) 
from T cross join F 
+2

정확히 똑같은 것은 아닙니다. "T cross join from someFunction (T.Value) F"의 경우 함수는 T의 각 레코드에 대해 반환 된 레코드 수를 변경할 수 있습니다. "T. * select"의 경우 T 교차에서 someFunction (T.Value) 조인 F "테이블 F의 레코드 수는 위에서 언급 한 T. –

+0

+1의 Urbino에 대한 모든 레코드에 대해 동일합니다. 이것의 또 다른 한계는 여러 값을 반환하려는 테이블 반환 함수가있는 경우입니다 (예 : "select T. *, F.c1, F.c2 from T cross join someFunction (T.Value) F"). 함수 호출을 반복하고 HANA의 T에서 "select T. *, (someFunction (T.Value)에서 c1을 선택하십시오.) (someFunction (T.Value)에서 c2를 선택하십시오)를 써야합니다. – mlkammer

+0

죄송합니다. 횡적 결합이 정확히 무엇인지 내 측면에서 잘못 이해합니다. 그러나 @mlkhammers는 SPS 11 (현재 SAP HANA 릴리스)에서 반환 된 열에 액세스하는 것에 대해 설명하지 않습니다.

을 통해 열의 주소를 지정할 수 있습니다. 정상적인 테이블 인 것처럼 –

관련 문제