아발란체님 신경써주셔서 감사합니다.
알려주신 방법으로 시도해 보았으나 제가 원하는 결과물이 안나오네요 ㅡㅡ
제가 잘못 인지하고있는것인지...
관리자가 특정입점업체 예를 들어 mall_id = 'aaa'에 공지를 남기게되면
aaa로 로그인했을때 전체공지 + aaa에게 남긴공지가 보여져야하는데 전부 노출이되네요.
또한 bbb라는 아이디로 로그인했을때 개별공지가 없기에 전체공지만 노출되어야하는데 이것또한 전체(aaa에게 개별공지한 내용포함)가 보이구요.
아!!. 쉬운듯 하면서도 어렵네요^^ 제가 어렵게 생각하는것인지....
신경써주셔서 감사합니다. 좀더 방법을 생각해보아야 겠네요..
-- 1. 전체 공지 SELECT * FROM bbs WHERE code = 'notice' AND noticeType = 'A' ; -- 2. 개별 공지 SELECT * FROM bbs WHERE code = 'notice' AND noticeType = 'P' AND mall_id = 'aaa' ; -- 3. 전체공지 + 개별공지 SELECT * FROM bbs WHERE code = 'notice' AND ( noticeType = 'A' OR (noticeType = 'P' AND mall_id = 'aaa') ) ; -- AND 는 곱하기(*), OR 는 더하기(+) 라고 생각하시면 됩니다. -- 사칙연산에서도 + 와 * 가 같이 쓰일 때 괄호에 따라 결과가 달라지듯이 -- OR 조건을 사용할 때는 괄호에 유의해야 합니다. -- 각 쿼리의 공통 조건은 AND 로 빼고 -- 개별 조건은 괄호 안에서 OR 로 묶어준다.