首页 > 数据库 >四、MySQL函数

四、MySQL函数

时间:2024-08-01 14:21:30浏览次数:9  
标签:加密 函数 -- pwd MySQL testmd5 SELECT MD5

MySQL函数

常用函数

SELECT NOW()
SELECT CURDATE()

聚合函数

函数名称 描述
COUNT() 计数
SUM() 求和
AVG() 平均值
MAX() 最大值
MIN() 最小值
......
-- 聚合函数
-- 都能统计 表中的数据(想查询一个表中有多少记录,使用count)
SELECT COUNT(borndate) FROM student -- count(字段),会忽略所有的null值
SELECT COUNT(*) FROM student -- count(*),不会忽略null值, 本质 计算行数
SELECT COUNT(1) FROM student -- count(1),不会忽略null值, 本质 计算行数

SELECT SUM(studentresult) AS TOTAL FROM result
SELECT AVG(studentresult) AS TOTAL FROM result
SELECT MAX(studentresult) AS TOTAL FROM result
SELECT MIN(studentresult) AS TOTAL FROM result

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

什么是MD5?

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

MD5不可逆,具体的值的md5是一样的

MD5破解网站的原理,背后有一个字典,MD5加密后的值,加密前的值

--  测试MD5
DROP TABLE IF EXISTS `testmd5`
CREATE TABLE IF NOT EXISTS `testmd5`(
  `id` INT(4) NOT NULL,
  `name` VARCHAR(20) NOT NULL,
  `pwd` VARCHAR(100) NOT NULL,
  PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

-- 明文密码
INSERT INTO testmd5 VALUES (1,'悟空','a123456'),(2,'悟能','a123456'),(3,'悟净','a123456')

-- 加密
UPDATE testmd5 SET pwd=MD5(pwd) -- 加密全部
UPDATE testmd5 SET pwd=MD5(pwd) WHERE id = 1 -- 加密一个

-- 插入时加密
INSERT INTO testmd5 VALUES (4,'悟空',MD5('a123456'))

-- 如何校验:将用户传递进来的密码,进行md5加密,然后对比加密后的值
SELECT * FROM testmd5 WHERE `name` = '悟空' AND pwd = MD5('a123456')

标签:加密,函数,--,pwd,MySQL,testmd5,SELECT,MD5
From: https://www.cnblogs.com/shisi2001/p/18336565

相关文章

  • 超详细的MySQL CRUD 并配备了大量的测试用例, 包教包会
    MySQL数据库表的增删查改CRUD:Create(创建),Retrieve(读取),Update(更新),Delete(删除)Create​INSERT[INTO]table_name[(column[,column]…)]VALUES(value_list)[,(value_list)]…value_list:value,[,value]…insert语句主要有两种情况,一种是全行插......
  • 使MySQL 8.5支持“Asia/Shanghai”格式时区配置
    默认情况下,MySQL不支持设置“Asia/Shanghai”格式时区信息,如根据数据记录的时区信息去转换时间时,会发生意想不到的空。“表达式1”会返回正常的时间转换结果:--表达式1SELECTCONVERT_TZ('2024-08-0111:04:04','+00:00','+08:00');“表达式2”会返回NULL:--表达式2SELE......
  • await 调用的函数不一定必须是 async 函数。 await 关键字通常用于 async 函数内部,用
    await调用的函数不一定必须是async函数。 await关键字通常用于async函数内部,用来等待一个Promise对象的解决。但如果被await调用的对象不是Promise,那么它会被直接返回。 functionnotPromiseFunction(){return42;}asyncfunctionexample(){const......
  • nodejs 使用 sequelize 实现 mysql数据库的批量插入
    直接上代码:/***设置mysql连接,返回连接实例。连接格式:账户:密码@数据库地址/具体数据库名称***/constsetConnect=()=>{constsequelize=newSequelize(`mysql://${你的mysql地址}`,{logging:(...msg)=>Logger.INSTANCE.inf......
  • 从MySQL大量数据清洗到TiBD说起
    一、业务背景公司主要做的业务是类似贝壳的二手房租售,数据库中存了上亿级别的房源数据,之前数据库使用的是mysql,后面需要将mysql数据库切换成了Tidb,在切换的过程中,需要将老库的数据经过数据清洗后再存入新库(因为有一些表结构的设计变了),其中我们处理的一个逻辑就是将房间......
  • MySQL安装教程(保姆级)
    1.首先要了解自己的计算机打开设置——系统——系统信息然后就可以知道自己计算机的类型了。2.下载MySQL2.1.来到MySQL官网点击进入我们下拉页面,可以找到DOWNLOADS页面默认给咱们选择最新的版本,咱们不用,咱们尽量选一个稳定的版本。而且,版本过高后,就没......
  • 关于PHP 函数性能优化的技巧
    本文由ChatMoney团队出品本文将详细介绍PHP函数性能优化的技巧。通过分析PHP函数的执行过程和性能瓶颈,提供一系列实用的优化方法,并结合代码示例,帮助读者提升PHP代码的执行效率。文章内容将涵盖变量作用域、递归算法、循环优化、内存管理等关键方面。一、理解PHP函数......
  • PHP 函数性能优化的技巧是什么?
    本文由ChatMoney团队出品本文将详细介绍PHP函数性能优化的技巧。通过分析PHP函数的执行过程和性能瓶颈,提供一系列实用的优化方法,并结合代码示例,帮助读者提升PHP代码的执行效率。文章内容将涵盖变量作用域、递归算法、循环优化、内存管理等关键方面。一、理解PHP函数......
  • mysql复习
     一、DELETE和TRUNCATE的用法DELETE用法DELETE命令用于从数据表中删除指定的记录。其基本语法如下:DELETEFROM表名WHERE条件;示例:DELETEFROMemployeesWHEREemployee_id=100;上述示例将从employees表中删除employee_id为100的记录。......
  • c++含有纯虚函数的虚基类是否能构造?
    前言笔者工作中有很多类派生自一个虚基类,但是这些派生类又有很多操作是大致相同,尤其是这些类都不能拷贝,所以需要删除拷贝构造函数和拷贝赋值运算符。最直接的想法是在虚基类里面删除拷贝构造函数和拷贝赋值运算符。但我想因为虚基类不能实例化,那是否可以定义常规构造函数、......