MOD函数用于返回N除以M后的余数

语法结构

MOD(N, M)

-- 0
SELECT MOD(27,3);
-- 1
SELECT MOD(28,3);
-- 2
SELECT MOD(29,3);
-- 0.5
SELECT MOD(15.5,3);

MOD函数求余数也可以用%替代

-- 0
SELECT 27 % 3;
-- 1
SELECT 28 % 3;
-- 2
SELECT 29 % 3;
-- 0.5
SELECT 15.5 % 3;

MOD函数常用来判断奇偶

例如

MOD(id,2) = 1      id是奇数

MOD(id,2) = 0      id是偶数

练习案例:奇偶互换位置

数据导入

DROP TABLE IF EXISTS student_info;
CREATE TABLE student_info(
student_id INT(8),
student_name VARCHAR(8)
)
ENGINE = InnoDB
DEFAULT CHARSET = utf8;
INSERT INTO
student_info (student_id,student_name)
VALUE (1,'李明')
,(2,'王猛')
,(3,'吴丽丽')
,(4,'张飞')
,(5,'赵涛');

student_info表(学生信息表)

问题:将奇数学号和偶数学号的相邻学生调换学号。若最后一个是奇数学号,则该学号不参与调换,最终结果按照最新学号升序排列(输出内容:student_id,student_name)

解题思路:使用MOD函数将学号除以2,然后通过余数判断学号的奇偶性,并结合CASE WHEN语句,当学号为奇数时,将当前学号加1得到该学生的新学号;当学号为偶数时,将当前学号减1得到该学生的新学号。需要考虑的特殊情况是,当前学号为数据条数且为奇数时,不对学号进行操作,只需按照学号升序排列即可

SELECT(CASE WHEN mod(student_id,2) = 1 AND student_id = (SELECT COUNT(*) FROM student_info) THEN student_id WHEN mod(student_id,2) = 1 THEN student_id + 1 ELSE student_id - 1 END)AS student_id,student_name
FROM student_info
ORDER BY student_id;

结果展示:

[Mysql] MOD函数相关推荐

  1. Mysql 常用函数(19)- mod 函数

    Mysql常用函数的汇总,可看下面文章 https://www.cnblogs.com/poloyy/p/12890763.html mod 的作用 求余数,和%一样 mod的语法格式 mod(n,m ...

  2. mysql 聚合函数内比较运算符_关于常用 MYSQL 聚合函数,其他函数 ,类型转换,运算符 总结...

    /* 关于MYSQL 聚合函数,其他函数 ,类型转换,运算符 总结,*/ -- 1 运算符优先级  /* 12.1.1. 操作符优先级 以下列表显示了操作符优先级的由低到高的顺序.排列在同一行的操作符 ...

  3. 建立学生选课表 mysql 语句_学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)...

    学生选课数据库SQL语句45道练习题: 一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...

  4. mysql常用函数参考

    mysql常用函数参考 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回 ...

  5. MySQL常用函数 二

    结合MySQL自带的帮助文档列一下MySQL数据库中常用的一些函数. 事实证明:MySQL的联机帮助资料非常实用,希望哪一天可爱的Oracle可以像MySQL学习一下,她可以让您基本不用查看其他的资料 ...

  6. mysql ceil,MySQL常用函数介绍

    前言: MySQL数据库中提供了很丰富的函数,比如我们常用的聚合函数,日期及字符串处理函数等.SELECT语句及其条件表达式都可以使用这些函数,函数可以帮助用户更加方便的处理表中的数据,使MySQL数 ...

  7. mysql数学函数有什么_mysql数学函数有哪些?

    mysql数学函数有:1.绝对值函数[ABS(X)]和返回圆周率的函数[PI(X)]:2.平方根函数[SQRT(X)]和求余函数[MOD(X,Y)]:3.获取随机数的函数[RAN()]和[RAND(X ...

  8. MySQL之函数和谓词

    今天我们主要MySQL的函数和谓词. 目录 1.函数 1.1算数函数 1.2 字符串函数 1.3 日期函数 1.4 转换函数 2.谓词 参考资料 1.函数 我们在前面几张章学习了SQL语言一些基本的语 ...

  9. MySql常用函数及命令

    1 添加mysql\bin 到path 2 启动cmd 登陆 :mysql -hlocalhost -uroot -pxxxx 3退出 exit 在mysql>提示符下命令   show dat ...

  10. mysql 常用函数

    欢迎z1988316我的:空间博客网摘资源设置|帮助|退出 CSDN首页 资讯 论坛 博客 下载 搜索 更多CTO俱乐部 学生大本营 培训充电 移动开发 软件研发 云计算 程序员 TUP the bl ...

最新文章

  1. 在mybatis中模糊查询有三种写法
  2. Ubuntu 关机,重启,注销命令
  3. 用户画像-撸一部分代码啊
  4. LCD 进入休眠的操作解决方式
  5. inotify 机制
  6. Oracle索引----位图索引
  7. 无法检查指定的位置是否位于cfs上_打印机知识普及:七大原因导致的打印机无法打印及解决方法...
  8. 数据结构与算法-列表相关时间复杂度
  9. JavaWeb学习笔记-kuangshen
  10. 学习笔记2—MATLAB的copyfile技巧
  11. 面试题:什么叫2B树
  12. Javascript实践-去除数组的重复元素
  13. jq向php文件传json,jQuery向后台传入json格式数据的方法
  14. IO流实现csv文件到vcf文件生成
  15. python selenium无头浏览器
  16. Opencv_07 图像的像素值统计
  17. 巧妙的位运算及模运算
  18. 基于Android的医院预约挂号系统
  19. Java第三章-数组
  20. Javaweb1:HTML、各种标签

热门文章

  1. 《黑客帝国》的宗教启示
  2. 年薪35万女网管的故事
  3. ThreadLocal的坑--ThreadLocal跨线程传递问题
  4. java ltp4j_ltp工具使用配置
  5. 2021-04-17 ffmpeg视频合并报错;视频合并中间添加空白
  6. SPL:self-paced learning 自步学习
  7. 掷骰子(python代码)
  8. 十年磨一剑,今日把示君:架构师分享从一名码农到如今的成长经验
  9. 装机出现“我们检测到您的硬盘是GPT格式但未找到ESP分区”解决方法
  10. 测试工程师的项目经验怎么写?