MySQL学习Day05(狂神说Java)

5.MySQL函数

5.1 常用函数

-- 数学运算
 SELECT ABS(-8)  -- 绝对值
 SELECT CEILING (9.4)  -- 向上取整
 SELECT FLOOR (9.4)  -- 向下取整
 SELECT RAND()  -- 返回一个0-1之间的随机数
 SELECT SIGN(-10)  -- 判断一个数的符号 0-0 负数返回-1 正数返回1
 
 -- 字符串函数
 SELECT CHAR_LENGTH('即使再小的')  -- 字符串长度
 SELECT CONCAT('w','a','nm') -- 拼接字符
 SELECT INSERT('我爱编程helloword',1,2,'超级热爱') -- 查询,从某个位置开始替换某个长度
 SELECT LOWER('kuansghen')-- 小写字母
 SELECT UPPER('kuansghen')-- 小写字母
 SELECT INSTR('kuansghen','h')-- 返回第一次出现的子串的索引
 SELECT REPLACE('坚持就能成功','坚持','努力') -- 替换出现的指定字符串
 SELECT SUBSTR('坚持就能成功',4,6)-- 返回指定的字符串(源字符串,截取的位置,截取的长度)
 SELECT REVERSE('坚持就能成功')-- 反转
 
 -- 查询姓张的同学,名字邹
 SELECT REPLACE(studentname,'张','邹') FROM student
 WHERE studentname LIKE '周%'
 
 -- 时间和日期函数
 SELECT CURRENT_DATE() -- 获取当前日期
 SELECT CURDATE()-- 获取当前日期
 SELECT NOW()-- 获取当前时间
 SELECT LOCALTIME()-- 本地时间
 SELECT SYSDATE() -- 系统时间
 
SELECT YEAR(NOW())
SELECT MONTH(NOW())
SELECT DAY(NOW())
SELECT HOUR(NOW())
SELECT MINUTE(NOW())
SELECT SECOND(NOW())
-- 系统
SELECT USER()
SELECT SYSTEM_USER()
SELECT VERSION()

5.2 聚合函数(常用)

函数名称描述
count()计数
sum()求和
avg()平均值
max()最大值
min()最小值
…………
-- =========================== 聚合函数====================
-- 都能够统计表中的数据(想查询一个表中有多少个记录,就使用这个count())
SELECT COUNT(studentname) FROM student;-- count(字段),会忽略所有的null值
SELECT COUNT(*) FROM student;-- count(*)不会忽略null值,本质计算行数
SELECT COUNT(1) FROM student;-- count(1),不会忽略所有的null值,本质是计算行数
SELECT SUM(`studentresult`) AS 总和 FROM result
SELECT AVG(`studentresult`) AS 平均分 FROM result
SELECT MAX(`studentresult`) AS 最高分 FROM result
SELECT MIN(`studentresult`) AS 最低分 FROM result

5.3 数据库级别的MD5加密(扩展)

什么是MD5?

主要增强算法复杂度和不可逆性

MD5不可逆,具体的值和MD5一样

 -- ==========================测试MD5加密=============
 CREATE TABLE `testmd5`(
 `id` INT(4) NOT NULL,
 `name` VARCHAR(20) NOT NULL,
 `pwd` VARCHAR(50) NOT NULL,
 PRIMARY KEY(`id`)
 )ENGINE=INNODB DEFAULT CHARSET=utf8
 -- 明文密码
 INSERT INTO testmd5 VALUES(1,'张三','123456'),(2,'lisi','123456'),(3,'wagwu','123456')
 -- 加密
 UPDATE testmd5 SET pwd=MD5(pwd) WHERE id=1
 UPDATE testmd5 SET pwd=MD5(pwd)-- 加密全部密码
 
 -- 插入的时候加密
 INSERT INTO testmd5 VALUES(4,'testming',MD5('123456'))
 
-- 如何校验,将用户传递过来的密码进行md5加密,然后比对加密的值

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值