目录

  • MYSQL函数集合(select+函数)
  • 1、计算数值函数
  • 2、字符串函数
  • 3、时间函数
  • 4、系统信息函数
  • 5、加密函数
  • 6、窗口函数
  • 1.窗口函数语法(OLAP函数)
  • 2.窗口函数有以下功能
  • 3.注意事项


MYSQL函数集合(select+函数)

1、计算数值函数

含义

SQL函数

统计函数

count(*/列名/1)

平均分

avg(x)

最大值

max(x)

最小值

min(x)

总和

sum(x)

返回绝对值

abs(x)

返回 >= 最小整数

cell(x)

返回 <= 最大整数

floor(x)

返回0~1之间随机数

rand()

返回x符号(x为负数/0/正数——返回-1/0/1)

sing(x)

圆周率

PI()

返回x保留小数点后d位

truncate(x,d)

返回x保留小数点后d位,不足补零

format(x,d)

返回a的b次方

pow(a,b)

返回平方根

sqrt(x)

返回e 的x次方

exp(x)

返回x%y余数

mod(x,y)

角度转换为弧度

radians(x)

弧度转换为角度

degrees(x)

正弦值

sin(radians(x))

条件判断函数

SELECT IF(1>0,‘正确’,‘错误’)

2、字符串函数

含义

字符串函数

返回字符串的字符数

char_length/length

合并字符串

concat

合并时,每个字符加 @

concat_ws(’@’,a,b)

字符串替换

insert(‘字符串’,开始位置,终止位置,‘替换数据’)

字母转为大写

upper(x)

字母转为小写

lower(x)

返回前x位

left(‘ ’,x)

返回后x位

right(‘ ’,x)

去除开始空格

LTRIM(’ ')

去除结尾空格

RTRIM(’ ')

去除前后空格

TRIM(’ ')

将字符串重复x次

repeat(x)

字符替换

replace(‘字符串’,‘要替换的值’,‘替换值’)

比较两个字符串

strcmp(x,y)

获取a的位置

instr(’’,‘a’)

反转字符串

reverse(x)

返回第n个字符串

ELT(n,’’,’’,’’,’’)

3、时间函数

含义

时间函数

当前日期

curdate()

当前时间

curtime()

当前日期时间

now()

获取UNIX时间戳

nuix_timestamp()

获取时间戳

nuix_timestamp(‘x’)

将时间戳转为普通格式

form_timestamp(x)

返回UTC 日期

UTC_DATE()

返回UTC 时间

UTC_TIME()

获取日期中的月份——数字

month(’ ')

获取日期中的月份名称——英文

monthname(’ ')

获取日期中的星期——英文

dayname(’ ')

获取日期中的星期名称——数字,以周日开始0-7

dayofweek(’ ')

计算日期是本年的第几天

dayofyear(’ ')

计算本年第几个星期——0-53

week(’ ')

计算本月第几天

dayofmonth(’ ')

计算日期是第几季度——1-4

quarter(’ ')

小时

HOUR(‘ ’)

分钟

MINUTE(’ ‘)


SECOND(’ ‘)

按照指定返回

EXTRACT(指定格式 FROM ‘ ’)

将时分秒格式转化为秒

time_to_sec(’ ‘)

将秒转化为时分秒格式

sec_to_time(’ ‘)

计算距离(0000-01-01)天数

to_days(’ ‘ )

计算两个时间相隔天数

datediff(终止时间,开始时间)

累加数值到 时间中 默认是天

ADDDATE(‘2021-08-03 11:11:11’,3)

累减数值到 时间中 默认是天

SUBDATE(‘2021-08-03 11:11:11’,3)

加一秒

ADDTIME(‘16:12:25’,1)

减一秒

SUBTIME(‘16:12:25’,1)

4、系统信息函数

含义

系统信息函数

返回数据库版本号

version()

返回服务器连接数

connection_id()

当前数据库名称

DATABASE()

当前用户

USER()

当前用户

SYSTEM_USER()

当前用户

SESSION_USER()

当前用户

CURRENT_USER()

5、加密函数

含义

加密函数

加密

md5(’’)

加密

password(’’)

加密

encode(’’,‘加密方式’)

对encode解密

decode(’’,‘加密方式’)

6、窗口函数

1.窗口函数语法(OLAP函数)

select *,
	  <窗口函数> over (partition by <用于分组的列名>
	                order by <用于排序的列名>[DESC 降序|ASC 升序])
	from 班级表

<窗口函数>的位置,可以放以下两种函数:

  1. 专用窗口函数,比如rank, dense_rank, row_number等
  2. 聚合函数,如sum,avg, count, max, min等

2.窗口函数有以下功能

1)同时具有分组(partition by)和排序(order by)的功能

2)不减少原表的行数,所以经常用来在每组内排名

3.注意事项

  • 窗口函数原则上只能写在select子句中
  • rank, dense_rank, row_number区别
  • rank:数值相同,排名相同,下一个按次序排
  • dense_rank:数值相同,排名相同,下一个名次加一
  • row_number:数值相同,排名不同,按次序排列

mysql updae 一列为序号 mysql序列函数_mysql updae 一列为序号