sql문 문의드립니다.

sql문 문의드립니다.

QA

sql문 문의드립니다.

본문

안녕하세요

https://sir.kr/qa/551441

예전에 문의를 이어서 문의드립니다.

 

select a.price from (
  select price from group where pay_cancel='N' union all  select price from person where cancel_flag='N'
) a

 

라는 sql문이 있는데요~

group 테이블의 idx가  person 테이블의 group_idx와 

연관이 되는데요. (group테이블은 그룹장 / person테이블은 그룹원)

 

위 sql문은 각 테이블의 조건에 맞는 값들이 합쳐지는거잖아용

 

저기에 추가로

person 테이블에 출력될 값들이 

group 테이블의 pay_cancel='N' 인 값들의 idx 컬럼 >> person 테이블의 group_idx 도 영향을 받아서 출력이 안됐음 합니다.

어떻게 해야되나요?

ex)

group테이블

idx  pay_cancel ~~

 2       N

 3       Y

 

person테이블

idx group_idx name~~

 1     1          홍길동1

 2     2          홍길동2

 3     2          홍길동3

 

>> 원하는값 

group테이블의 idx 2

person테이블의 idx 1 , 2

 

 

 

 

이 질문에 댓글 쓰기 :

답변 1


SELECT a.price 
FROM (
    SELECT price 
    FROM `group` 
    WHERE pay_cancel = 'N'
    
    UNION ALL
    
    SELECT p.price 
    FROM person p
    JOIN `group` g ON p.group_idx = g.idx
    WHERE p.cancel_flag = 'N' AND g.pay_cancel = 'N'
) a;
답변을 작성하시기 전에 로그인 해주세요.
전체 97
QA 내용 검색

회원로그인

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