쿼리를 짜다보면 해당 쿼리의 순서를 출력해야하는 경우가 종종 생깁니다.
MariaDB의 경우
SELECT ROW_NUMBER() OVER() AS row_number
위와같이 사용하면 해당 조회 쿼리의 순서에 맞게 row_number가 카운트 됩니다.
그런데 종종 GROUP BY, ORDER BY를 사용하면 row_number가 꼬이는 경우가 발생합니다.
그럴경우 아래처럼 하면 됩니다.
SELECT ROW_NUMBER() OVER(PARTITION BY user_name ORDER BY user_name, user_id)
여기서 PARTITION BY는 GROUP BY로 생각하면 됩니다.
ORDER BY의 경우 조회 쿼리와 같게 맞춰주시면 됩니다.
'개발자 > SQL' 카테고리의 다른 글
| SHA2 DB에서 바로 조회하는 법 (0) | 2025.05.29 |
|---|---|
| [MariaDB] 쿼리로 조회한 숫자 값을 ,를 추가해서 받는 방법 (0) | 2024.07.05 |
| [MariaDB] 개행 문자, CHAR(13) + CHAR(10) (0) | 2024.07.04 |
| [MariaDB] SUM에서 값이 없을때 0 으로 나오게 하는 방법 (0) | 2024.07.01 |
| [MariaDB] PRIMARY KEY 2개 하는법(수정법) (0) | 2023.05.09 |