sql-4-函数

常见函数

1、运算函数

select ABS(-8)  -- 绝对值
select ceiling(9.4)  -- 向上取整
select floor(9.4)  -- 向下取整
select rand()  -- 返回一个0到1的随机数
select sing(10)  -- 判断数的符号,0->0,负数->-1,正数->1

2、字符串函数

  • 注意:
    • 左闭右开
    • 顺序从1开始,而不是0
select char_length('hellosql')  --放回字符串长度
select concat('hello','sql') --拼接字符串
select insert('hellosql',1,5,'thanks')  --在某个位置替换某个长度
select lower('Mysql') --小写字母
select uper('Mysql') --大写字母
select instr('hellosql','e')  --放回第一次出现的子串的索引
select peplace('hellosql','hello','thanks')  --替换出现的指定字符串
select substr('hellosql',1,5) --会返回hello,返回指定的一段字符串
select revsrse('lqsolleh')  --反转字符串

-- 实例:找出姓周的,改成姓邹的
select peplace(studentname,'周','邹') from student
where studentname like '周%'

3、时间和系统函数

  • 时间
select curdate()  -- 获取当前日期
select now()  -- 获取当前时间
select localtime()  -- 本地时间
select sysdate()  -- 系统时间

select year(curdate()) 
-- 这个函数可以是year,month,day,hour,minutes,second,括号里的是一个日期的格式
  • 系统
select system_user() --返回root
select user()  -- 返回root
select version()  -- 返回mysql的版本信息

聚合函数

  • count()
    • 计数
  • sum()
    • 求和
  • avg()
    • 平均数
  • max()
    • 最大值
  • min()
    • 最小值
-- count(),查询一个表中有多少行数据
-- 字段查询会忽略null,而后面的不会
select count(`studnetid`) from student;
select count(*) from student;
select count(1) from student;

select sum(`studentresult`) as 总分 from result;
select avg(`studentresult`) as 平均分 from result;
select max(`studentresult`) as 最高分 from result;
select min(`studentresult`) as 最低分 from result;

MD5加密(拓展)

  • md5加密介绍:
    • 主要是为了增强算法复杂度和不可逆性。
    • md5不可逆,具体的值MD5是一样的
    • md5破解网站的原理是,背后有一个字典:对应加密前后的两个值
-- 创建test表单,注意pwd要设长一些(md5加密后pwd很长)
CREATE TABLE `testmd5`(
	`id` INT(4) NOT NULL,
	`name` VARCHAR(20) NOT NULL,
	`pwd` VARCHAR(20) NOT NULL,
	PRIMARY KEY(`id`)	
)ENGINE=INNODB DEFAULT CHARSET=utf8;

-- 插入数据
INSERT INTO testmd5
VALUES(1,'zhangsan',123),
(2,'lisi',1234),
(3,'wangwu',12345);

-- 用update进行md5加密
UPDATE `testmd5`
SET `pwd`=MD5(`pwd`);

-- 直接在插入时md5加密
INSERT INTO testmd5
VALUES(4,'lisi',MD5('12345'));

-- 校验

posted @ 2021-06-07 17:43  Coder-Wang  阅读(59)  评论(0编辑  收藏  举报