MYSQL常用函数与聚合函数常用详解

5:MYSQL函数

5.1常用函数



-- 数学运算
SELECT ABS(-1)        -- 绝对值函数
SELECT CEILING(9.4)   -- 向上取整
SELECT FLOOR (9.4)    --  向下取整
SELECT RAND()         --  0-1之间的随机数
SELECT SIGN()         -- 判断一个数的符号  0-0  负数返回负一 正数返回一

-- 字符串函数:
SELECT CHAR_LENGTH()   --  字符串长度
SELECT CONCAT()         -- 拼接字符串
SELECT INSERT()        -- 查询 替换
SELECT LOWER()           -- 全部转换为小写
SELECT UPPER()          -- 全部转换为大写
SELECT INSTR('xiaogongtongxue','t') -- 寻找出现的位置
SELECT REPLACE('坚持就能成功','坚持','努力')  -- 替换出现的指定的字符串
SELECT SUBSTRING('坚持就能成功',4,3)   -- 返回指定字符串 (源字符串,截取位置,截取长度)
SELECT REVERSE('xwVNLJV')          -- 反转


-- 时间与日期
SELECT CURRENT_DATE()  -- 获取当前日期
SELECT  CURRENT()  
SELECT NOW()     -- 获取当前的时间
SELECT LOCALTIME()  -- 本地时间
SELECT SYSDATE()     -- 获取系统时间


-- 时间与日期
SELECT CURRENT_DATE()  -- 获取当前日期
SELECT  CURRENT()  
SELECT NOW()     -- 获取当前的时间
SELECT LOCALTIME()  -- 本地时间
SELECT SYSDATE()     -- 获取系统时间

SELECT YEAR(NOW())   
SELECT MONTH(NOW())  -- 同样适用于年月日时分秒
 
 -- 系统
 SELECT USER()
 SELECT SYSTEM_USER()
 

5.2聚合函数

函数名称描述
COUNT()计数
SUM()求和
AVG()平均
MAX()最大
MIN()最小
  1. GROUP BY子句必须出现在WHERE子句之后,ORDER BY子句之前. HAVING语句必须在ORDER BY子句之后。(where先执行,再groupby分组;groupby先分组,having在执行。

-- 聚合函数
-- 查询表中的数据(返回数据的总和值)
select count(name) from student    -- count指定列  会忽略所有的null值


select count(*) from student       -- 不会忽略NULL值  包含所有的列
select count(1) from stundet           -- 不会忽略NULL值   忽略了所有的列 将其变成1值

select sum(score)  as 总和 from grade
SELECT avg(score)  AS 平均分 FROM grade
SELECT max(score)  AS 最高分 FROM grade
SELECT min(score)  AS 最低分 FROM grade
group by [条件]      -- 通过什么字段来分组
having [条件]  

5.3数据库级别的MD5加密

MD5: 主要增强算法的复杂度与不可逆性

MD5不可逆


-- 测试MD5加密

create table  `testMD5`
(
`id` int(4) not null,
`name` varchar(10) not null,
`pwd` varchar(20) not null,
primary key(`id`)

)engine=innodb DEFAULT charset=UTF8

INSERT INTO `testMD5`  VALUES('1','zhangsan','123456'),('2','lise','123456'),('3','wangwu','124536')


-- 加密
update testMD5 set pwd=MD5(pwd) where id=1
update testMD5  set pwd='12' where id=1
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值