쿼리가 짜여있는 것들을 보는 중에 WHERE 1=1이 있는 것을 보았다. 음 일단 유추해보기에는 무조건 참인 것을 뜻하는데 (Python에서 While True처럼) 왜 이것을 사용하는걸까?
편의성을 위함SELECT * FROM users
WHERE 1=1
AND age > 20
AND gender = 'M'
AND status = 'active'
조건이 있든 없든 쉽게 추가하거나 뺄 수 있다.
예를 들어 안쓴다면 아래처럼
SELECT * FROM users
WHERE age > 20 AND gender = 'M' AND status = 'active'
사용하게 되니까 가독성? 측면에서는 위 예시가 더 낫다.
또한 동적 쿼리를 쓸 때도 유용하다고 하니 참고로 알아두자.