2012-04-20 2 views
1

아래의 SQL 문에서 반환 한 문자열을 concatetnate해야합니다. 대신 UPDATEDSTRING 텍스트의이 두 결과를 연결해야합니다.

select substr(IB_TGTLOCATION,INSTR(IB_TGTLOCATION,'/',1,3)+1) from PSIBSVCSETUP; 

select substr(connurl,1,INSTR(connurl,'/',1,3)) from PSGATEWAY where LOCAL_FLAG='Y'; 

와 위의 두 선택 문장의 연결된 결과이 테이블을 갱신

.

Update PSIBSVCSETUP SET IB_TGTLOCATION=('UPDATEDSTRING') where SEQNO=1; 

감사합니다,

+0

이 두 테이블 각각에 행이 하나만 있습니까? 그렇지 않다면 PSIBSVCSETUP과 PSGATEWAY의 행을 어떻게 일치시켜야합니까? – erikxiv

+0

예 첫 번째 테이블에는 단 하나의 행만 있습니다. 두 번째 테이블에는 두 개의 행이 있지만 where 절은 단 하나의 행만 가져옵니다. – sriram

답변

1

두 쿼리가 하나 개의 행이 다른 사람은 테이블을 조인해야

Update PSIBSVCSETUP SET IB_TGTLOCATION=(
(select substr(IB_TGTLOCATION,INSTR(IB_TGTLOCATION,'/',1,3)+1) from PSIBSVCSETUP) || 
(select substr(connurl,1,INSTR(connurl,'/',1,3)) from PSGATEWAY where LOCAL_FLAG='Y') 
) where SEQNO=1; 

에게 반환하는 경우 스리 람.

관련 문제