小美是一所中学的信息科技老师,她有一张 seat 座位表,平时用来储存学生名字和与他们相对应的座位 id。

其中纵列的 id 是连续递增的

小美想改变相邻俩学生的座位。

你能不能帮她写一个 SQL query 来输出小美想要的结果呢?

示例:

+---------+---------+

| id | student |

+---------+---------+

| 1 | Abbot |

| 2 | Doris |

| 3 | Emerson |

| 4 | Green |

| 5 | Jeames |

+---------+---------+

假如数据输入的是上表,则输出结果如下:

+---------+---------+

| id | student |

+---------+---------+

| 1 | Doris |

| 2 | Abbot |

| 3 | Green |

| 4 | Emerson |

| 5 | Jeames |

+---------+---------+

注意:

如果学生人数是奇数,则不需要改变最后一个同学的座位。

# Write your MySQL query statement below

SELECT * FROM(

SELECT id-1 AS id,student FROM seat WHERE id%2=0

UNION

SELECT id+1 AS id,student FROM seat WHERE id%2=1 AND (id+1) <= (SELECT COUNT(*) FROM seat)

UNION

SELECT id AS id,student FROM seat WHERE id%2=1 AND (id+1) > (SELECT COUNT(*) FROM seat)

) AS T1

ORDER BY id ASC

标签:数据库,seat,力扣,student,query,座位,id,SELECT

来源: https://www.cnblogs.com/JAYPARK/p/10351175.html

MySQL中改变相邻学生座位_力扣——换座位(数据库的题相关推荐

  1. 单调不减序列查询第一个大于等于_[力扣84,85] 单调栈

    题目链接 84. 柱状图中最大的矩形 85. 最大矩形 题目描述-84 给定 n 个非负整数,用来表示柱状图中各个柱子的高度.每个柱子彼此相邻,且宽度为 1 . 求在该柱状图中,能够勾勒出来的矩形的最 ...

  2. 《LeetCode力扣练习》第448题 找到所有数组中消失的数字 Java

    <LeetCode力扣练习>第448题 找到所有数组中消失的数字 Java 一.资源 题目: 给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内.请你 ...

  3. 《LeetCode力扣练习》第94题 二叉树的中序遍历 Java

    <LeetCode力扣练习>第94题 二叉树的中序遍历 Java 一.资源 题目: 给定一个二叉树的根节点 root ,返回它的 中序 遍历. 示例 1: 输入:root = [1,nul ...

  4. 《LeetCode力扣练习》第75题 颜色分类 Java

    <LeetCode力扣练习>第75题 颜色分类 Java 一.资源 题目: 给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按 ...

  5. 力扣牛客每日刷题(Python解法持续更新)

    力扣牛客每日刷题(持续更新) 初试结束第15天, 之前简单的处理了部分毕设方面的任务, 对接下来的学习做了个简单的规划 决定每天开始刷几道力扣题提高一下算法的理解,不能让之前学的数据结构都忘记了 每道 ...

  6. 《LeetCode力扣练习》第62题 不同路径 Java

    <LeetCode力扣练习>第62题 不同路径 Java 一.资源 题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" ). ...

  7. 《LeetCode力扣练习》第56题 合并区间 Java

    <LeetCode力扣练习>第56题 合并区间 Java 一.资源 题目: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, ...

  8. 《LeetCode力扣练习》第55题 跳跃游戏 Java

    <LeetCode力扣练习>第55题 跳跃游戏 Java 一.资源 题目: 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 . 数组中的每个元素代表你在该位置可以跳跃的最大 ...

  9. 《LeetCode力扣练习》第338题 比特位计数 Java

    <LeetCode力扣练习>第338题 比特位计数 Java 一.资源 题目: 给你一个整数 n ,对于 0 <= i <= n 中的每个 i ,计算其二进制表示中 1 的个数 ...

最新文章

  1. 开源一个天气APP Build with React Native
  2. Scala学习笔记-10
  3. java读取classpath配置文件_SpringBoot2.x入门教程:理解配置文件
  4. 这些git技能够你用一年了
  5. Winforn中DevExpress的TreeList中显示某路径下的所有目录和文件(附源码下载)
  6. USTC English Club Note20211212
  7. Java连接HBASE数据库,创建一个表,删除一张表,修改表,输出插入,修改,数据删除,数据获取,显示表信息,过滤查询,分页查询,地理hash
  8. keepalived(7)——操作脚本
  9. WIN7 64位系统注册银行支付组件
  10. LeetCode 143 重排链表-中等
  11. $Android自定义控件在不同状态下的属性
  12. LeetCode 1614. 括号的最大嵌套深度
  13. Framework学习(三)之PMS、AMS、WMS
  14. HTML5学习笔记简明版(5):input的type超级类型
  15. pygame检测精灵与精灵的碰撞_Pygame(三)--走出黑暗的洞穴(2)
  16. 计算机文字排版工作过程,计算机文字录入与排版教学计划.doc
  17. IPV6网络简介及使用
  18. Wrong namespace. Expected 'com.example.springboot.mapper.DepartmentMapper' but found 'com.sandystar.
  19. 定义并测试一个代表员工的Employee类。
  20. nCode:DesignLife案例教程六

热门文章

  1. 程序员取悦女票的正确姿势---Tip1(iOS美容篇)
  2. [二]Java虚拟机 jvm内存结构 运行时数据内存 class文件与jvm内存结构的映射 jvm数据类型 虚拟机栈 方法区 堆 含义...
  3. [转] Java中public,private,final,static等概念的解读
  4. CentOS 7.0,启用iptables防火墙
  5. BIZTALK项目中WEB引用WEBSERVICES服务时候报错
  6. 微信公众平台对所有公众号开放自定义菜单
  7. IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin安装配置[完整修正实用版]
  8. C语言应用于LR中-如何得到数组长度
  9. Nacos v0.7.0:对接CMDB,实现基于标签的服务发现能力
  10. ORACLE中通过DBMS_CRYPTO包对表敏感字段进行加密