연산자 우선순위1 SQL 연산자 우선 순위 맨처음 실행은 이랬고 순서대로 OR 과 AND를 할 거라고 생각했으나 type이 0이외에도 출력 SELECT * FROM TB_FAULT tf WHERE device = 3 OR device = 4 AND `type` = 0 ORDER BY write_time DESC 연산자의 순서는 ()괄호 NOT AND OR 따라서 이 문법은 실제로 (device = 3) OR ((device = 4) AND (`type` = 0)) 이렇게 실행되고 있었던 것이다. device 3은 그냥 다 조회했다. 해결은 간단하게 괄호를 써서 해결 SELECT * FROM TB_FAULT tf WHERE (device = 3 OR device = 4) AND `type` = 0 ORDER BY write_time DESC 2023. 3. 17. 이전 1 다음