도움이 필요합니다. 0 1 488

by 사나마나 [SQL Query] [2019.07.29 18:38:11]


DECODE( (SELECT count(*) FROM (select 제품코드 from 주문내역 테이블 where 주문번호 = 받아온 주문번호 ) A, (select 제품코드 from 특가상품 테이블 WHERE TO_CHAR(SYSDATE,'YYYYMMDD') BETWEEN 시작일 AND 종료일) B WHERE A.제품코드 = B.제품코드) , '0', 'Y', 'N')

주문내역에서 특가상품을비교해서 특가상품만 있으면 N

일반상품+특가상품 = Y 가 나오도록 해야합니다

원래 있던 쿼리를 수정해서 위의 쿼리를 만들었는데 일방상품+특가상품 일 때  N이 나옵니다.

위에 조건대로 나오려면 어떻게 수정을 해야 할까요?

by 마농 [2019.07.30 07:46:23]
SELECT DECODE(COUNT(*), COUNT(b.제품코드), 'N', 'Y')
  FROM 주문내역_테이블 a
  LEFT OUTER JOIN 특가상품_테이블 b
    ON a.제품코드 = b.제품코드
   AND TO_CHAR(sysdate, 'yyyymmdd') BETWEEN b.시작일 AND b.종료일
 WHERE 주문번호 = :받아온_주문번호
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입