db 쿼리에 관해서 조언을 구합니다.. > 자유게시판

자유게시판

db 쿼리에 관해서 조언을 구합니다.. 정보

db 쿼리에 관해서 조언을 구합니다..

본문

DB쿼리 문에 대해서 문의좀 드릴게요..
좀 어거지성으로 예제 드려서 난해한감이 있네요..

다음과 같이 테이블이 있을때, 어떻게 처리 하는게 좋은 방법인지..
의견을 구합니다..


mydb=> select * from 상품;
 번호 |  카테고리 | 모델 | 상품명
----------------+------+------
   1  |   핸드폰  | hp01 | 삐삐롱폰
   2  |   시계    | wa01 | 얼마니시계
   3  |   모니터  | mo01 | 흑백모니터
   4  |   핸드폰  | hp02 | 애니토라
   5  |   시계    | wa02 | 팔에감어시계
   6  |   시계    | wa03 | 짝퉁시계
(6 rows)


mydb=> select * from 소유자;
 번호 |  모델 | 이름    | AS위치
----------------+------+-------
   1  |  hp01 | 이병혼  | 서울
   2  |  wa01 | 김대히  | 광주
   3  |  mo01 | 나명품  | 평양
   4  |  hp02 | 안성귀  | 인천
   5  |  wa02 | 피카추  | 외계
   6  |  wa03 | 이병혼  | 서울
   7  |  hp02 | 나명품  | 평양
   8  |  wa03 | 나명품  | 평양
   9  |  wa03 | 나명품  | 평양
(9 rows)


상품.모델 과 소유자.모델은 PK와 FK로 연결
상품 에서 모델명을 삭제 할때 소유자의 모델넘버 모두 삭제 하고 자 할때

Ex) DELETE FROM `상품` WHERE `상품`.`모델` = wa03
    을 했을경우, 소유자 필드의 wa03 으로 된 나명품으로 등록된 내용이 전부 같이 삭제 되고자 함

검색은 INNER JOIN 한다고 했을때..
SELECT * From `소유자` INNER JOIN `상품` on (소유자.모델 = 상품.모델)

삭제 처리를 하고자 하는데, 어떻게 처리를 해야 할지 모르겠네요..



좋은 방법 있으면 조언 부탁드릴께요..

예제문 함께 주시면 더 감사드리구요 ㅠㅠ

추천
0

댓글 7개

delete from `소유자` where 모델 in (select 모델 from `상품` where 상품명='$상품명')
이런 걸 말씀하시는건가... 질문이 이해하기 어려워요 ^^;
쿼리 적용해보구요~ 이해가 좀 가는거 같아요~;;
제가 말주변이 없어서 ㅠㅠ 간단한 문제를 복잡하게 돌리는 경향이 ㅠㅠ
말러님 위와 같이 쿼리를 실행 하였는데요, 각각 하나씩의 테이블 내용만 삭제가
되네요.. 제가 원하는건, 상품의 테이블에서 모델항목을 지웠을때 소유자테이블의
모델도 지워 지는건데요...
제가 이해를 잘못해서 그런걸까요?
조인시켜서 하나의 쿼리로 두 테이블에서 삭제를 하고 싶다는 뜻이군요.
다음을 테스트해보세요.

delete a, b from `상품` as a, `소유자` as b where 모델='$모델' AND a.모델 = b.모델
전체 196,490 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT