Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[2800] [해결] [공통] dbase sql문장여! outer join
zpijnh5 [ ] 1352 읽음    1998-05-14 14:14
쿠쿠!! 드디어 해결했습니다!!!
자문자답이네요~ 어제오후내내 고민하던걸..
아주 간단하고도 무식하게 풀었더니만~~ 세상해~ 싱겁게 해결되는 군여!!

1     select A.member001, A.name, B.price     
2     from "mb001.dbf" A, "mb0091998.dbf" B  
3     where A.member001 = B.member001
4     union
5     select member001, NULL, 0   ----> 바로 요기!! NULL
6     from "mb0101998.dbf"
7     where MEMBER001 NOT IN (select MEMBER001 from "mb0091998.dbf")
8     order by member001

음.. A.name의 데이타길이를 char형 10자리를 잡았다면 그만큼의 공백이나,
데이타를 대입해야만 합니다!(뿌듯뿌듯)
dbase에선 null은 인식하지 못하나봐여~
제 사견입니다..

그럼 해결된 문장을 다시 써보면..

1     select A.member001, A.name, B.price     
2     from "mb001.dbf" A, "mb0091998.dbf" B  
3     where A.member001 = B.member001
4     union
5     select member001, '1234567890', 0   ----> 바로 요기!!!
6     from "mb0101998.dbf"
7     where MEMBER001 NOT IN (select MEMBER001 from "mb0091998.dbf")
8     order by member001

이렇게 쓰면 아주 깨끗하게..
해당되지 않은 필드는 '1234567890'이라는
총 길이가 10인(A.name의 데이타 길이) 데이타를 뿌려 주는 것이죠!!

                                                뿌듯해하는 꿀물~~~~~~~



+ -

관련 글 리스트
2800 [해결] [공통] dbase sql문장여! outer join zpijnh5 1352 1998/05/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.