美文网首页
180608_exchange_data

180608_exchange_data

作者: 郑磊_4135 | 来源:发表于2018-06-08 16:43 被阅读0次

    Mary is a teacher in a middle school and she has a table seat storing students' names and their corresponding seat ids.

    The column id is continuous increment.
    Mary wants to change seats for the adjacent students.
    Can you write a SQL query to output the result for Mary?

    id student
    1 Abbot
    2 Doris
    3 Emerson
    4 Green
    5 Jeames

    For the sample input, the output is:

    id student
    1 Doris
    2 Abbot
    3 Green
    4 Emerson
    5 Jeames

    Note:
    If the number of students is odd, there is no need to change the last one's seat.

    SELECT if(id < (select count(*) from seat), if(id mod 2 = 0, id - 1, id + 1), if(id mod 2 = 0, id - 1, id)) as id, student
    FROM seat
    ORDER BY id ASC
    

    相关文章

      网友评论

          本文标题:180608_exchange_data

          本文链接:https://www.haomeiwen.com/subject/mqpasftx.html