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

来源:互联网 发布:淘宝卖的mac软件 编辑:程序博客网 时间:2024/06/14 01:35
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

idcount190250

 

 

 

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

 

idcountstatus190PASS250FAIL

 

 

 

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

idcount190250

 

 

 

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

idcountstatus190PASS250FAIL

 

 

 

五:系统信息函数

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表示

0 0
原创粉丝点击