sql中mod()函数取余数的用法
16lz
2022-01-04
Mod(a,b) 在sql中的意思是 a / b 的余数(即 a % b )
基础用法:如果id需要是偶数或者奇数时就可以使用mod。
mod(id,2)=1 是指id是奇数。
mod(id,2)=0 是指id是偶数。
select mod(3,2) from dual
例如:根据身份证判定该员工是否是男女,从而实现对性别的更新。
身份证号的第17位数字,奇数为男性,偶数为女性
SEX CHAR(1) NOT NULL, --** 性别: 1 男,2 女
UPDATE table_name SET SEX = (CASE WHEN mod(identifynumber[17],2) = '1' THEN '1' ELSE '2' end) WHERE condition;
例如:根据身份证号table2更新table1表员工的性别,生日,年龄。(下述使用的是Informix数据库)
update table1 set sex = (select sex from table2 where table2.t_id = table1.t_id and table2.t_no = table1.t_no),birthday = (select substr(identifynumber,7,8) from table2 where table2.t_id = table1.t_id and table2.t_no = table1.t_no),age = (select year(today) from dual) - ( select year( substr(identifynumber,7,8) ) from table2 where table2.t_id = table1.t_id and table2.t_no = table1.t_no)where t_id = '';
mysql> SELECT MOD(63,8),MOD(120,10),MOD(15.5,3);+-----------+-------------+-------------+| MOD(63,8) | MOD(120,10) | MOD(15.5,3) |+-----------+-------------+-------------+| 7 | 0 | 0.5 |+-----------+-------------+-------------+1 row in set (0.03 sec)
更多相关文章
- ES6 变量声明,箭头函数,数组方法,解构赋值,JSON,类与继承,模块化练习
- 箭头函数的基础使用
- Python技巧匿名函数、回调函数和高阶函数
- 浅析android通过jni控制service服务程序的简易流程
- Android(安卓)bluetooth介绍(四): a2dp connect流程分析
- Android架构分析之使用自定义硬件抽象层(HAL)模块
- Android中OpenMax的适配层
- android 包管理系统分析
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)