SELECT TP_TAKE_DATE ,GRANULATE_YIELD1 ,GRANULATE_YIELD2 ,GRANULATE_YIELD3 FROM TB_EC0131 WHERE TP_RM_FLAG = 'F' AND TO_CHAR(TO_DATE(TP_TAKE_DATE,'YY.MM.DD'),'YY.MM.DD') >= TO_CHAR(TO_DATE('15.08.24','YY.MM.DD')-2,'YY.MM.DD') AND TO_CHAR(TO_DATE(TP_TAKE_DATE,'YY.MM.DD'),'YY.MM.DD') <= TO_CHAR(TO_DATE('15.08.24','YY.MM.DD'),'YY.MM.DD') ORDER BY TP_TAKE_DATE ASC
이부분에서 GRANULATE_YIELD1,GRANULATE_YIELD2,GRANULATE_YIELD3 이 세개값중에 세개 모두값이 null 일때만 안보이게 하고싶은데ㅠ 저는 한개씩밖에 못하겠어가지고ㅠ is not null 을 묶어서 어떻게 ㅎㅐ야 하나요?ㅠㅠ
SELECT tp_take_date , granulate_yield1 , granulate_yield2 , granulate_yield3 FROM tb_ec0131 WHERE tp_rm_flag = 'F' -- 의미 없이 사용된 함수(TO_CHAR, TO_DATE)를 줄여야 합니다. -- AND tp_take_date >= TO_CHAR(TO_DATE('15.08.24', 'yy.mm.dd')-2, 'yy.mm.dd') AND tp_take_date <= '15.08.24' -- 다양한 방법이 있습니다. 편한걸로 골라 쓰세요. -- AND (granulate_yield1 IS NOT NULL OR granulate_yield2 IS NOT NULL OR granulate_yield3 IS NOT NULL) AND NOT (granulate_yield1 IS NULL AND granulate_yield2 IS NULL AND granulate_yield3 IS NULL) AND granulate_yield1 || granulate_yield2 || granulate_yield3 IS NOT NULL AND COALESCE(granulate_yield1, granulate_yield2, granulate_yield3) IS NOT NULL ORDER BY tp_take_date ;