加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MYSQL数据库与MSSQL对比学习MYSQL的心得(六)--函数

发布时间:2020-12-26 08:26:38 所属栏目:MySql教程 来源:网络整理
导读:《MYSQL数据库与MSSQL对比学习MYSQL的心得(六)--函数》要点: 本文介绍了MYSQL数据库与MSSQL对比学习MYSQL的心得(六)--函数,希望对您有用。如果有疑问,可以联系我们。 MYSQL应用 数学函数 MYSQL应用 1、求余函数MOD(X,Y) MYSQL应用 MOD(X,Y)返回x被y除

MYSQL应用使用下面脚本来测试,无论使用方式一还是方式二,当前的LAST_INSERT_ID都是最后一个值

MYSQL应用
CREATE TABLE [dbo].[aaa](
  [a] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,[name] [nvarchar](50) NOT NULL
) ON [PRIMARY]
 
MYSQL应用
USE [sss]
SELECT * FROM [dbo].[aaa]
INSERT INTO [dbo].[aaa]
    ( [name] )
VALUES ( N'sdfsdf' -- name - nvarchar(50)
     )
SELECT * FROM [dbo].[aaa]
INSERT INTO [dbo].[aaa]
    ( [name] )
VALUES ( N'sdf969' -- name - nvarchar(50)
     ),('lkjj96'),('565656')
SELECT IDENT_CURRENT('aaa')
SELECT * FROM [dbo].[aaa]

MYSQL应用

MYSQL应用

MYSQL应用加密函数

MYSQL应用1、加密函数PASSWORD(STR)

MYSQL应用PASSWORD(STR)从原文密码str计算并返回加密后的密码字符串,当参数为NULL时,返回NULL

MYSQL应用
SELECT PASSWORD('NEWPWD')

MYSQL应用
MYSQL将PASSWORD函数加密后的密码保存到用户权限表中

MYSQL应用TIPS:PASSWOR()函数在MYSQL服务器的鉴定系统中使用;不应将他用在个人应用程序中,PASSWORD()函数加密是单向的(不可逆)

MYSQL应用PASSWORD执行密码加密与UNIX中密码加密方式不同

MYSQL应用2、加密函数MD5(str)

MYSQL应用MD5(str)为字符串算出一个MD5 128比特校验和.该值以32位十六进制数字的二进制字符串形式返回,若参数为NULL,则会返回NULL

MYSQL应用
SELECT MD5('123')

MYSQL应用
?
3、加密函数ENCODE(str,pswd_str)

MYSQL应用ENCODE(str,pswd_str)使用pswd_str作为密码,加密str.使用DECODE()解密结果,结果是一个和str长度相同的二进制字符串

MYSQL应用
SELECT ENCODE('nihao','123')

MYSQL应用
可以看到加密后的结果为乱码

MYSQL应用?4、解密函数DECODE(crypt_str,pswd_str)

MYSQL应用?DECODE(crypt_str,解密加密字符串crypt_str,crypt_str是由ENCODE()返回的字符串

MYSQL应用
SELECT DECODE(ENCODE('nihao','123'),'123')

MYSQL应用
可以看到,解密出来的字符串

MYSQL应用ENCODE()和DECODE互为反函数

MYSQL应用其他函数

MYSQL应用1、格式化函数FORMAT(x,n)

MYSQL应用FORMAT(x,n)将数字x格式化,并以四舍五入的方式保留小数点后n位,结果以字符串的形式返回.

MYSQL应用若n为0,则返回结果函数不含小数部分

MYSQL应用
SELECT FORMAT(12332.123465,4)

MYSQL应用
FORMAT(12332.123465,4)保留4位小数点值,并进行四舍五入,结果为12,332.1235

MYSQL应用2、不同进制的数字转换的函数

MYSQL应用CONV(N,from_base,to_base)函数进行不同进制数间的转换.

MYSQL应用
SELECT CONV('a',16,2)

MYSQL应用
?CONV('a',2)将十六进制的a转换为二进制表示的数值.

MYSQL应用3、IP地址与数字相互转换的函数

MYSQL应用INET_ATON(expr)给出一个作为字符串的网络地址的点地址表示,返回一个代表该地址数值的整数.

MYSQL应用地址可以是4或8比特地址

MYSQL应用INET_NTOA(expr)给定一个数字网络地址(4或8比特),返回作为字符串的该地址的点地址表示.

MYSQL应用4、加锁函数和解锁函数

MYSQL应用GET_LOCK(str,timeout)设法使用字符串str给定的名字得到一个锁,超时为timeout秒.

MYSQL应用RELEASE_LOCK(str)解开被GET_LOCK()获取的,用字符串str所命名的锁.

MYSQL应用IS_FREE_LOCK(str)检查名为str的锁是否可以使用

MYSQL应用IS_USED_LOCK(str)检查名为str的锁是否正在被使用

MYSQL应用5、重复执行指定操作的函数

MYSQL应用BENCHMARK(count,expr)函数重复count次执行表达式expr.他可以用于计算MYSQL处理表达式的速度.

MYSQL应用结果值通常为0(0只是表示处理过程很快,并不是没有花费时间)

MYSQL应用另一个作用是他可以在MYSQL客户端内部报告语句执行的时间.

MYSQL应用首先,使用PASSWORD函数加密密码

MYSQL应用
SELECT PASSWORD('nihao')

MYSQL应用
可以看到PASSWORD()函数执行花费的时间为0.00098秒

MYSQL应用下面使用BENCHMARK函数重复执行PASSWORD操作500000次

MYSQL应用
SELECT BENCHMARK(500000,PASSWORD('nihao'))

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读