Contents
내가 작성한 쿼리
연속되는 두 학생의 좌석 ID를 바꾸는 솔루션을 작성합니다. 학생 수가 홀수인 경우 마지막 학생의 ID는 변경되지 않습니다. ID 순으로 정렬된 결과 테이블을 오름차순으로 반환합니다.
내가 작성한 쿼리
MySQL, Oracle
SELECT
CASE
-- id가 홀수이고 +1한 값이 범위 내라면
WHEN MOD(id, 2) = 1 AND id + 1 <= (SELECT MAX(id) FROM Seat) THEN id + 1
-- id가 짝수
WHEN MOD(id, 2) = 0 THEN id - 1
ELSE id
END AS id,
student
FROM Seat
ORDER BY id;
Share article