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

FireBird Q&A
[3554] Re:delete
아폴론 [] 2402 읽음    2010-09-16 17:08
ksd 님이 쓰신 글 :
: Firebird-2.0.0.12484-0-Win32.exe
: Firebird_ODBC_1.2.0.69-Win32.exe
: 를 설치하여 사용중 입니다.
:
: delete from a where a.no = ( select b.no from b where b.c1 = 조건 ) ;
: 와 같은 문장을 사용하고 싶습니다.
: 형식은 관계없이 b 테이블에서 검색된 자료와 일치하는 a 테이블의 자료를 삭제하고 싶습니다.
:
: subquery 결과가 한건인경우는 실행되는것 같은데 여러건의 자료가 검색된경우
: 여러건의 자료가 검색 되었다는 메세지가 나타납니다.
:
: 부탁 드립니다.
:
: delete from a where EXISTS ( select * from b where b.c1 = 조건 and b.no = a.no ) ;
: 이 문장은 실행 됩니다. 다만 시간이 많이 걸리는 군요.

delete from a where a.no = ( select b.no from b where b.c1 = 조건 ) ;
이문장이 에러가 나는것은  삭제 조건이 = 로  한개의 값을 원하는데..
select b.no from b where b.c1 = 조건  요기서 한건 이상이 되면 당연히 에러 나겠지요..

delete from a where a.no in (  ,  ,  ,)  ..   요런 방법을 생각해 보세요..

delete from a where a.no   in ( select distinct b.no from b where b.c1 = 조건 )
뭐 이렇게요...
바로 delete 하지 마시고 저 조건으로 select 먼저 해 보신후..ㅎㅎㅎ

+ -

관련 글 리스트
3538 delete ksd 2414 2010/08/26
3554     Re:delete 아폴론 2402 2010/09/16
3539     Re:delete 김상면 2327 2010/08/27
3540         Re:Re:delete ksd 2758 2010/08/27
3549             Re:Re:Re:delete 까막.윤창희 2600 2010/09/07
3550                 답변 감사드립니다. ksd 2329 2010/09/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.