2014-06-07 8 views
2

SQL 변환을 사용하여 인포매티카에서 동적 SQL 연산자를 만들 수 있습니까? 예를 들면.Informatica의 where 절에있는 동적 연산자

SELECT p.id 
FROM products p 
WHERE p.weight ?operator? '30' 

여기서 ? operator? 수 값 : <> =

심지어 : 에하지

+0

시도했지만 어떤 종류의 매개 변수를해야할지 모르겠다. 확실히 문자열이 아니기 때문에 인용 부호로 변경됩니다. 즉석에서 '<'가 아닌 <로 바꾸기 때문에 구문 분석이 불가능 해집니다. – AdrianX

+0

SQL Transform의 SQL Editor 창을 사용하여 쿼리에 매개 변수를 추가하지 마십시오. 표현식을 사용하여 전체 쿼리를 작성하고 입력 포트를 통해 전달하고 문자열 대체 (예 :'~ Query_Port ~')를 사용하십시오. _SQL Transformation> Query Mode_에서 잘 설명되어 있습니다. –

답변

3

는 (?parameter?)를 결합 파라미터 및 문자열 교체 (~string~)를 사용할 수있다. 이 항목은 SQL 변환에 잘 설명되어 있습니다

SELECT p.id 
FROM products p 
WHERE p.weight ~operator~ '30' 

>를 변환 가이드의 쿼리 모드 장 : 당신은 후자가 필요합니다.

1

하나의 아이디어는 온 상태, 예를 들어하기위한 파라미터를 이용하는 것이다에

[s_m_test_source_param] 
$$sq_param = Id = 1 

사용 $$ sq_param소스 필터 소스 예선 특성 :이 샘플 paramFile으로. 귀하의 경우에 youd가이 방법으로 $$의 sq_parameter을 설정해야합니다

$$sq_param = p.weight > '30' 

분명히, 이것은 당신이 찾고있는 완벽한 솔루션이 아닙니다. SQL의 SQL 편집기 창이 변환

관련 문제