Lim Seunghyun Space

[Leetcode] Exchange Seats 본문

SQL/SQL 문제

[Leetcode] Exchange Seats

Lim Seung Hyun 2023. 3. 18. 19:08

Source

 

Exchange Seats - LeetCode

Can you solve this real interview question? Exchange Seats - Table: Seat +-------------+---------+ | Column Name | Type | +-------------+---------+ | id | int | | student | varchar | +-------------+---------+ id is the primary key column for this table. Ea

leetcode.com

 

문제

  • 연속된 두 학생의 ID를 교환하는 쿼리를 작성
    • 마지막 학생의 ID가 홀수인 경우, ID를 교환하지 않음
  • 출력한 칼럼은 id, student
  • 쿼리 결과는 ID의 오름차순으로 정렬

 

Solution (MySQL)

SELECT 
    CASE
        WHEN id % 2 = 1 AND id = (SELECT MAX(id) FROM Seat) THEN id
        WHEN id % 2 = 0 THEN id - 1
        WHEN id % 2 = 1 THEN id + 1
    END AS id,
    student
FROM Seat
ORDER BY id;
728x90

'SQL > SQL 문제' 카테고리의 다른 글

[LeetCode] Capital Gain/Loss  (0) 2023.03.30
[LeetCode] Market Analysis I  (0) 2023.03.18
[Leetcode] 197. Rising Temperature  (0) 2022.04.18
[Leetcode] 196. Delete Duplicate Emails  (0) 2022.04.18
[Leetcode] 184. Department Highest Salary  (0) 2022.03.25