MYSQL数据库学习----MYSQL函数

MYSQL函数分为几种

  1. 数学函数
  2. 字符串函数
  3. 日期和时间函数
  4. 条件判断函数
  5. 系统信息函数
  6. 加密函数
  7. 格式化函数

一:数学函数

主要使用的几个数学函数

1 ABS()----绝对值函数

eg. SELECT ABS(-5);

返回 5

2 PI()----圆周率函数

eg. SELECT PI();

返回 3.141596

3 SIGN()----符号函数

正数返回1,0返回0,负数返回-1

eg. SELECT SIGN(5),SIGN(0),SIGN(-5);

返回 1,0,-1

4 RAND()----随机函数

返回0~1之间的随机数

eg. SELECT RAND();

返回 0.92321421341234

如果需要返回一个0~100的随机数可以SELECT RAND()*100;

5 CEIL(x)----整数函数

返回一个大于或者等于x的最小整数

eg. SELECT CEIL(9.1);

返回 10

6 FLOOR(x)----整数函数

返回一个小于或者等于x的最大整数

eg. SELECT FLOOR(9.1);

返回 9

数学函数还有其他的正弦函数,余弦函数等等等,这里就不一一举例。

二:字符串函数

1 LENGTH(s)----字符串长度函数

返回字符串s的字符长度

eg. SELECT LENGTH("MYSQL");

返回 5

2 CONCAT(s1,s2,....)----将字符串1和字符串2多个字符串合并为一个字符串

eg. SELECT CONCAT("MYSQL","DATABASE");

返回 ”MYSQLDATABASE"

3 UPPER(s)/LOWER(s)----字符串大小写函数

UPPER(s):字符串s全部大写

LOWER(s):字符串s全部小写

4 INSTR(s,s1)----字符在字符串中的位置函数

字符串s中字符s1的开始位置

eg. INSTR("MYSQL", "Y");

返回 2

5 LEFT(s,n)/RIGHT(s,n)/SUBSTRING(s,n,len)----字符串截取函数

LEFT(s,n):返回字符串s前n个字符

RIGHT(s,n):返回字符串s后n个字符

SUBSTRING(s,n,len):返回字符串第n个字符开始len个字符串

6 LTRIM(s)/RTRIM(s)/TRIM(s)/TRIM(s1 FROM s)----去掉字符串两端的空格或者特定字符函数

LTRIM(s):去掉字符串s左边的空格

RTRIM(s):去掉字符串s右边的空格

TRIM(s):去掉字符串s两边的空格

TRIM(s1 FROM s):去掉字符串s两边的字符串s1

7 REPEAT(s,n)----重复字符串函数

eg. SELECT REPEAT("MYSQL",2);

返回 "MYSQLMYSQL"

三:日期和时间函数

MYSQL中日期和时间函数,分为日期函数,时间函数还有就是日期和时间合在一起的函数,日期函数就是指年,月,日这些,时间函数就是时,分,秒函数

1 CURDATE()/CURRENT_DATE()----当前日期函数

2 CURTIME()/CURRENT_TIME()----当前时间函数

3 NOW()/LOCALTIME()/SYSDATE()/CURRENT_TIMESTAMP()----当前日期时间函数

4 MONTH(D)----当前日期的月份值

5 MONTHNAME(D)----当前日期的月份名称

6 DAYOFMONTH(D)----当前日期是本月的第几天

7 DAYNAME(D)----当前日期是星期几(名称)

8 DAYOFWEEK(D)----当前日期是星期几(数值)1表示星期日,2表示星期一

9 WEEKDAY(D)----当前日期是星期几(数值)0表示星期日,1表示星期一

10 WEEK(D)----当前日期是本年中第几个星期(数值)范围0~53

11 WEEKOFYEAR(D)----当前日期是本年中第几个星期(数值)范围1~53

12 YEAR(D)----当前的年份值

13 HOUR(T)----当前时间的小时值

14 MINUTE(T)----当前时间的分钟值

15 SECOND(T)----当前时间的秒钟值

16 ADDDATE(D,N)----当前日期向后N天后的日期

17 SUBDATE(D,N)----当前日期向前N天后的日期

18 ADDTIME(T,N)----当前时间加上N秒后的时间

19 SUBTIME(T,N)----当前时间减去N秒后的时间

四:条件判断函数

1 IF(条件表达式, s1, s2)----判断语句

如果条件表达式为真,则返回字符串s1

如果条件表达式为假,则返回字符串s2

eg. 假设有个表格demo

id count
1 90
2 50

SELECT id,count,IF(count>=60,‘PASS‘,‘FAIL‘) AS status FROM demo;

id count status
1 90 PASS
2 50 FAIL

2 IFNULL(s1, s2)----判断是否为NULL函数

如果s1不为NULL就返回s1,否则返回s2

3 CASE函数

CASE WHEN 条件表达式1 THEN s1 WHEN 条件表达式2 THEN s2...END

CASE 字段 WHEN 条件表达式1 THEN s1 WHEN 条件表达式2 THEN s2...END

CASE开始....END结束

两种写法都是同一个意思,都是当条件表达式1为真时则返回s1,当条件表达式2为真时则返回s2

eg. 假设有个表格demo

id count
1 90
2 50

SELECT id, count CASE WHEN count>60 ‘PASS‘ WHEN count<60 ‘FAIL‘ END AS status FROM demo;

id count status
1 90 PASS
2 50 FAIL

五:系统信息函数

1 VERSION()----MYSQL版本函数

2 CONNECTION_ID()----数据库连接数函数

3 DATABASE()----当前使用的数据库名称函数

4 USER()----当前访问数据库用户名称函数

其他的几个系统信息函数不是经常用到,这里就不一一举例

六:加密函数

1 PASSWORD(s):加密函数,一般是给用户密码加密的,是不可逆加密函数

2 MD5(s):MD5加密,是不可逆加密函数

3 ENCODE(s,s1):用字符s1给字符串s加密

4 DECODE(s,s1):用字符s1给字符串s解密

七:其他函数

1 FORMAT(x,n):格式化函数,对x数值四舍五入并且保留小数点后n位

2 INET_ATON(ip):将IP转换为数字表示

3 INET_NTOA(ip):将数字转换为IP表示

时间: 2024-10-25 12:02:17

MYSQL数据库学习----MYSQL函数的相关文章

MYSQL数据库学习----MYSQL数据库、表操作和引擎区别

MYSQL数据库的操作 一:查看MYSQL中所有的数据库 SHOW DATABASES; 二:创建数据库 CRETAE DATABASE 数据库名称; 三:删除数据库 DROP DATABASE 数据库名称; 四:查看数据库支持的存储引擎 SHOW ENGINES; 四:连接MYSQL数据库 USE 数据库名称; MYSQL数据库中表的操作 一:查看数据库中的所有表格 SHOW TABLES: 二:查看表格的结构 DESC 表名称;(基本结构): 或 SHOW CREATE TABLE 表名称;

MYSQL数据库学习----MYSQL数据类型

一切数据在计算中都是以二进制形式存储,而8位二进制数就表示1个字节. 通常我们说一种数据类型占多少字节,就是说这种数据类型可以表示多少位的二进制数,同时二进制数可以转换为十进制数,进而得到这种数据类型可以表示多大的十进制数! 打个比方,MYSQL中的int型数据类型,大家都知道int型可以表示4个字节,那就是32位二进制,32位二进制就能表示无符号十进制数0~4394967295. 所以我们给这个int数据类型赋值一个在0和4394967295之间的数就可以了,如果超出这个范围系统就会报错. M

MYSQL数据库学习笔记1

MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 修改表 表的增删查改 查询 数据库概念 数据库是一种对大量信息进行管理的一种方法. 数据库系统从结构上看,也是可以分为三层的: 物理层:数据实际如何存储 逻辑层:存储的是什么数据,以及数据间是什么关系 试图层:提供给用户的部分数据 关系数据库 目前关于数据库模型最主流的有两种, 一种叫做关系型数据库,这

MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(九)----JDBC的PreparedStatement接口重构增删改查 一.JDBC事务处理: 我们已经知道,事务的概念即:所有的操作要么同时成功,要么同时失败.在MySQL中提供了Commit.Rollback命令进行事务的提交与回滚.实际上在JDBC中也存在事务处理,如果要想进行事务处理的话,则必须按照以下的步骤完成. JDBC中事务处理的步骤: 1.要取消掉JDBC的自动提交:void setAutoCommit(boolea

MySQL基础学习之函数

数学函数 绝对值      abs() 圆周率      PI() 平方根 sqrt() 模除取余   mod(被除数,除数) 随机数      rand() 四舍五入    round(数字) 次方         pow(5,2) e为底的指数函数  exp(数字) 字符串函数 字符长度       length(字符) 字符连接       concat(字符1,字符2) 带符号的字符连接    concat_ws('-','su','zhou') 字符插入      insert('su

MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4085684.html 联系方式:[email protected] [正文] 这一周状态不太好,连续打了几天的点滴,所以博客中断了一个星期,现在继续. 我们在之前的几篇文章中学习了JDBC对数据库的增删改查.其实在实际开发中,一般都是使用第三方工具类,但是只有将之前的基础学习好了,在使用开源工具的

MySQL数据库学习初步

我使用的环境是Win7,开始学习PHP和MySQL,并且买了本<Head First PHP & MySQL>,可以从Head First Labs官网获得HeadFirst系列书籍的相关信息和源代码. 1.下载XAMPP开发包 从XAMPP中文官网下载目前比较流行的PHP开发包,XAMPP是完全免费且易于安装的Apache发行版,其中包含MySQL.PHP和Perl.XAMPP适用于Windows.Mac OS X和Linux,XAMPP开放源码包的设置让安装和使用出奇容易.我下载的

MySQL数据库学习----理论基础

一:数据存储发展过程 1. 人工管理阶段 主要存储在纸带.磁带等介质中,手工记录,效率低下. 2. 文件系统阶段 存储在计算机磁盘中,以文件形式出现,数据管理变得简单,但是数据没有结构化处理,不易于查询. 3. 数据库系统阶段 以数据库形式存储在计算机的磁盘上,用户可以通过数据库管理系统来查询数据. 二:数据库技术构成 1. 数据库系统(DataBase System----DBS) 不只是单纯的数据库,而是数据库.数据库管理系统.应用开发工具.数据库管理员和用户等的集合. 数据库是存储数据的地

Mysql数据库的mysql Schema 到底有哪些东西&amp; 手工注入的基础要领

#查看数据库版本 mysql> select @@version; +------------+ | @@version  | +------------+ | 5.5.16-log | +------------+ 1 row in set (0.00 sec) mysql> select * from information_schema.schemata; # 保存了系统的所有的数据库名 ,关键的字段是schema_name # 2 rows in set (0.04 sec)表示只有2