SQL order by, unique 조건 반드시 추가 할 것

yshjft·2023년 2월 25일
0

SQL

목록 보기
2/3

문제 상황

회사에서 1차 과제를 하던 중 쿼리를 이용하여 페이징을 하고 있는데 중복된 데이터가 등장하며 페이징이 제대로 동작하지 않는 문제가 발생하였다.

문제 원인 및 해결 방법

정렬 기준에 unique한 컬럼을 추가하지 않아서 발생하는 문제였다. DB는 더 이상 사용할 정렬 조건이 없는 경우 알아서 판단하여 정렬을 진행한다고 한다. 이는 개발자의 의도와 다른 결과를 내올 수 있으니 항상 마지막에 unique한 조건을 order by에 추가하도록 하자.

잡담

해당 문제는 Artzip 프로젝트를 하며 겪은 문제이기도 했다. 다만 이 당시에는 정확한 원인을 파악하지 못한 상태로 정렬 마지막 조건에 PK를 추가하여 문제를 해결하였다.

참고 블로그

profile
꾸준히 나아가자 🐢

0개의 댓글