当前位置: 首页 > news >正文

MySQL--MySQL函数

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除

MySQL函数

一、MySQL函数简介

函数表示对输入参数值返回一个具有特定关系的值,MSOL提供了大量丰富的函数,在进行数据库管理以及数据的查询和操作时将会经常用到各种函数。通过对数据的处理,数据库功能可以变得更加强大,可以更加灵活地满足不同用户的需求。各类函数从功能方面主要分为数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数和加密函数等其他函数

二、数学函数

1、绝对值函数ABS(x)和返回圆周率的函数PI()

ABS(X)返回X的绝对值;

 mysql> select ABS(2),ABS(-3.3),ABS(-33);# 返回——  2    3.3    33

PI()返回圆周率π的值。默认显示小数位6位;

 mysql> select pi();# 返回——  3.141593

2、平方根函数SQRT(X)和求余函数MOD(X,Y)

SQRT(X)返回非负数x的二次方根;

 mysql> select sqrt(9),sqrt(40),sqrt(-40);# 返回——  3    6.324555320336759    NULL

MOD(X)返回x被y除后的余数,MOD()对于带有小数部分的数值也起作用;

 mysql> select mod(31,8),mod(234,10),mod(45.5,6);# 返回——  7    4    3.5

3、获取整数的函数CEIL(X),CEILING(X)和FLOOR(X)

CEIL(X)和CEILING(X)的意义相同,返回不小于x的最小整数值,返回值转化为一个BIGINT

 mysql> select ceil(-3.35),ceiling(3.35);# 返回——  -3    4

FLOOR(x)返回不大于x的最大整数值,返回值转化为一个BIGINT

 mysql> select floor(-3.35),floor(3.35);# 返回——  -4    3

4、获取随机数的函数RAND()和RAND(X)

RAND(x)返回一个随机浮点值v,范围在0到1之间(0≤v≤1.0)。若已指定一个整数参数x,则它被用作种子值,用来产生重复序列。

 mysql> select rand(),rand(),rand();# 返回——  0.4599793697334634    0.9860691958908636      0.5504079009875729

不带参数的RAND()每次产生的随机数值是不同的

 mysql> select rand(10),rand(10),rand(11);# 返回——  0.6570515219653505    0.6570515219653505    0.907234631392392

可以看到,当 RAND(x)的参数相同时,将产生相同的随机数,不同的x产生的随机数值不同

5、函数ROUND(x)、ROUND(x,y)和 TRUNCATE(x,y)

ROUND(x)返回最接近于参数x的整数,对x值进行四舍五入

 mysql> select round(-1.14),round(-1.67),round(1.14),round(1.66);# 返回——  -1    -2    1    2

ROUND(x,y)返回最接近于参数x的数,其值保留到小数点后面y位,若y为负值,则将保留x值到小数点左边y位

 mysql> select round(1.38,1),round(1.38,0),round(232.38,-1),round(232.38,-2);# 返回——  1.4     1    230    200

TRUNCATE(x,y)返回被舍去至小数点后y位的数字x。若y的值为0,则结果不带有小数点或不带有小数部分。若y设为负数,则截去(归零)x小数点左起第y位开始后面所有低位的值。

 mysql> select truncate(1.31,1),truncate(1.99,1),truncate(1.99,0),truncate(19.99,-1);# 返回——  1.3    1.9    1    10

6、符号函数SIGN(X)

SIGN(x)返回参数的符号,x的值为负、零或正时返回结果依次为-1、0或1

 mysql> select sign(-21),sign(0),sign(21);# 返回——  -1    0    1

7、幂运算函数POW(X,Y)、POWER(X,Y)和EXP(X)

POW(x,y)或者 POWER(x,y)函数返回x的y次乘方的结果值

 mysql> select pow(2,2),power(2,2),pow(2,-2),power(2,-2);# 返回——  4    4    0.25    0.25

EXP(x)返回e的x乘方后的值

 mysql> select exp(3),exp(-3),exp(0);# 返回——  20.085536923187668    0.049787068367863944    1

8、对数运算函数 LOG(x)和 LOG10(x)

LOG(x)返回x的自然对数x相对于基数e的对数

 mysql> select log(3),log(-3);# 返回——  1.0986122886681098    NULL

LOG10(x)返回x的基数为 10的对数

 mysql> select log10(2),log10(100),log10(-100);# 返回——  0.3010299956639812    2    NULL

9、角度与弧度相互转换的函数RADIANS(x)和DEGREES(x)

RADIANS(x)将参数x由角度转化为弧度

mysql> select radians(90),radians(180);
# 返回——  1.5707963267948966    3.141592653589793

DEGREES(x)将参数x由弧度转化为角度

mysql> select degrees(pi()),degrees(pi() / 2);
# 返回——   180    90

10、正弦函数 SIN(x)和反正弦函数 ASIN(x)

SIN(x)返回x正弦,其中x为弧度值

mysql> select sin(1),round(sin(pi()));
# 返回——  0.8414709848078965    0

ASIN(x)返回x的反正弦,即正弦为x的值。若x不在-1到1的范围之内,则返回 NULL。

mysql> select asin(0.8414709848078965),asin(3);
# 返回——  1    NULL

11、余弦函数 COS(x)和反余弦函数 ACOS(x)

COS(x)返回x的余弦,其中x为弧度值

mysql> select cos(0),cos(pi()),cos(1);
# 返回——  1    -1    0.5403023058681398

ACOS(x)返回x的反余弦,即余弦是x的值。若x不在-1~1的范围之内,则返回 NULL

mysql> select acos(1),acos(0),round(acos(0.5403023058681398));
# 返回——  0    1.5707963267948966    1

12、正切函数、反正切函数和余切函数

TAN(x)返回x的正切,其中x为给定的弧度值;

mysql> select tan(0.3),round(tan(pi()/4));
# 返回——  0.30933624960962325     1

ATAN(x)返回x的反正切,即正切为x的值

mysql> select atan(0.30933624960962325),atan(1);
# 返回——  0.3    0.7853981633974483

三、字符串函数

1、计算字符串字符数与长度

CHAR LENGTH(str)返回值为字符串str所包含的字符个数。一个多字节字符算作一个单字符。

​mysql> select char_length('date'),char_length('egg');
# 返回—— 4    3

LENGTH(str)返回值为字符串的字节长度,使用utf8(UNICODE的一种变长字符编码,又称万国码)编码字符集时,一个汉字是3字节,一个数字或字母算1字节

mysql> select length('date'),length('egg');
# 返回—— 4    3

2、合并字符串函数CONCAT(s1,s2)、CONCAT_WS(x,s1,s2,...)

未完...

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Python,Maskrcnn训练,cannot import name ‘saving‘ from ‘keras.engine‘ ,等问题集合
  • 检索增强生成(RAG):智能内容生成的新纪元
  • 花几千上万学习Java,真没必要!(三十八)
  • Zotero的探索之路
  • 【网络安全】副业兼职日入12k,网安人不接私活就太可惜了!
  • 【学术会议征稿】第四届高性能计算与通信工程国际学术会议(HPCCE 2024)
  • app逆向抓包技巧:ROOT检测绕过
  • 网络6 -- udp_socket 实现 echo服务器
  • Windows Subsystem for Linux——使用宿主机器上的摄像头
  • 浅学爬虫-处理复杂网页
  • 等保测评练习卷22
  • 1.面试准备篇
  • 微信小程序教程009:条件渲染
  • 项目实战——外挂开发(30小时精通C++和外挂实战)
  • IDEA切换分支,会影响当前在跑的项目吗?
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • EOS是什么
  • Java,console输出实时的转向GUI textbox
  • JavaScript服务器推送技术之 WebSocket
  • learning koa2.x
  • MaxCompute访问TableStore(OTS) 数据
  • npx命令介绍
  • ucore操作系统实验笔记 - 重新理解中断
  • Windows Containers 大冒险: 容器网络
  • Work@Alibaba 阿里巴巴的企业应用构建之路
  • 关于List、List?、ListObject的区别
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 为视图添加丝滑的水波纹
  • 协程
  • 携程小程序初体验
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • python最赚钱的4个方向,你最心动的是哪个?
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • # 职场生活之道:善于团结
  • #HarmonyOS:Web组件的使用
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • #传输# #传输数据判断#
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • ( 用例图)定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现
  • (Java数据结构)ArrayList
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (vue)页面文件上传获取:action地址
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (回溯) LeetCode 40. 组合总和II
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (一)为什么要选择C++
  • (转)c++ std::pair 与 std::make
  • (转)jdk与jre的区别