category = '전자기기'
OR (category = '도서' AND price < 50000)
AND가 먼저 묶이고, 그다음 OR가 결합됩니다같은 조건식이라도 묶이는 순서가 달라지면 통과하는 행이 바뀝니다. 특히 AND와 OR를 섞을 때는 사람이 읽는 순서보다 DB의 우선순위가 먼저 적용됩니다.
price < 50000 조건은 도서 쪽에만 붙습니다. 그래서 비싼 전자기기까지 결과에 들어올 수 있습니다.
카테고리 범위를 먼저 만든 뒤 마지막에 가격 조건을 적용하므로, 두 카테고리에 같은 가격 기준이 걸립니다.
쿼리가 짧아도 해석 차이로 조회 대상이 넓어질 수 있어, 운영 데이터에서는 의도와 다른 행을 반환할 위험이 있습니다.
혼합 조건식에서는 AND/OR를 암묵적으로 믿지 말고, 어떤 묶음을 먼저 평가할지 명시하는 편이 안전합니다.
AND와 OR를 함께 쓰면 괄호로 먼저 계산할 범위를 고정하세요. 짧은 조건식이라도 결과 집합이 달라질 수 있습니다.