0
다음 sql 명령을 사용하여 일부 레코드를 검색합니다.외부 조인 테이블에 대한 Informix sql 검색
select con.type, con.contract_id, con.account, chk.account, chk.check_flags
from contract_scan_image con, outer check_customer_info chk
where con.type='AP' and con.account=chk.account
그리고 결과는 다음과 같습니다. 테이블에서 필드 "계정"에 아무것도없는 경우에도 기록은 아직 발견되는 이유는
type contract_id account account check_flags
AP 1413178 03071800181
AP 1413774 03071800569
AP 1414218 03071800810
AP 1415937 03071900602 03071900602 000000222010000000000000000000
AP 1417948 03072000524 03072000524 000000222010000000000000000000
AP 1417999 03072000555
AP 1418203 03072000667 03072000667 000000222010000000000000000000
AP 1418216 03072000672 03072000672 000000220010000000000000000000
......
?
같은 한 Statment을 writign하려고 다른 테이블과 일치가없는 경우에도 첫 번째 테이블에 행을 가져올 것이다 외부 조인 사용하는 원인 않습니다; 일치가없는 경우에도 행을 유지합니다. 일치하는 곳에서만 결과를 원한다면'INNER JOIN' *을 사용하십시오. (또한, ANSI92 표준으로 대체 된 조인에 대한','표기법을 사용하지 않는 것이 좋습니다. 1992 년, 20 년이 넘었습니다. 전에 ... 'INNER JOIN'에 대한 웹 검색) * – MatBailie
있어. 내 모든 개념이 잘못되었습니다. 그러나 informix에서 내부 조인의 sytax가 다음과 같아야합니다. con_type, con.contract_id, con.account, chk.account, chk.check_flags를 선택하십시오.contract_scan_image con , check_customer_info chk con.type = 'AP'및 con.account = chk.account – Johnny
INFORMIX는 INNER JOIN을 지원하지 않습니까? 이것이 1992 년 이래로 도입 된 문법입니다 ... – MatBailie