mysql语句-----函数使用

1|0总结常用函数及使用方法

1|11.字符串相关函数

 

 

-- 返回字符串字符集 CHARSET(str)select charset(ename) from emp;


-- 连接字符串 CONCAT(string [,…]) select concat(ename,' job is ',job) from emp;

-- 返回 substring在string中出现的位置,没有返回0 INSTR(string,substring) -- 这里返回8,dual是亚元表、系统表,可以作为测试表使用 select instr('hanshunping','ping') from dual;

-- 转换成大写 UCASE(string2) select ucase(ename) from emp;
-- 转换成小写 LCASE(string2) select lcase(ename) from emp;

-- 从string2中的左边起取length个字符 LEFT(string2,length) select left(ename,2) from emp; -- 从string2中的右边起取length个字符 RIGHT(string2,length) select right(ename,2) from emp;

-- string长度[按照字节] LENGTH(string) -- 这里按照字节是指字母1字节,汉字比如utf8是3字节 select length(ename) from emp;

-- 在str中用replace_str替换search_str REPLACE(str,search_str,replace_str) select ename,replace(job,'MANAGER','经理') from emp;

-- 逐字符比较两字符串大小 STRCMP(string1,string2) -- 这里是1,如果第一个字符串小于第二个就是-1,相等是0 select strcmp('hsp','asp') from dual;

-- 从str的position开始【从1开始计算】,取length个字符 SUBSTRING(str,position,[,length]) -- 从ename列第一个位置开始取出2个字符(不是字节) select substring(ename,1,2) from emp;
-- 从
ename列第一个位置开始取

select substring(ename,1) from emp;

-- 去除前端空格或后端空格 LTRIM(string2) RTRIM(string2) TRIM(string2) select ltrim(' jdfijidfji') from dual; select rtrim('jdfijidfji ') from dual; select trim(' jdfijidfji ') from dual;

1|2 2.数学相关函数

 

 

-- ABS(num) 绝对值 select abs(-10) from dual; -- BIN(decimal_number) 十进制转二进制 select bin(10) from dual; -- CEILING(number2) 向上取整,得到比num2大的最小整数 select ceiling(1.1) from dual; -- CONV(number2,from_base,to_base) 进制转换 -- 8由十进制转二进制 select conv(8,10,2) from dual; -- FLOOR(number2) 向下取整,得到比num2小的最大整数 select floor(1.1) from dual; -- FORMAT(number,decimal_places) 保留小数位数 -- 结果是78.12(结果四舍五入) select format(78.1245687) from dual; -- HEX(DecimalNumber) 转十六进制 -- 只能写整数,小数会忽略 select hex(20) from dual; -- LEAST(number,number2[,…]) 求最小值 select least(0,1,3,6) from dual; -- MOD(numerator,denominator) 求余 -- 10%3=1 select mod(10,3) from dual; -- RAND([seed]) RAND([seed])其范围为0≤v≤1.0 -- 生成随机数,不输入种子每次会随机生成不同随机数,输入种子会固定生成同一随机数,种子只取整数部分,小数不影响数值

1|3 3.时间日期相关函数

 

 

-- CURRENT_DATE() 当前日期 -- 2022-10-13 select current_date from dual; select current_date() from dual; select curdate from dual; -- CURRENT_TIME() 当前日期 -- 12:31:59 select CURRENT_TIME from dual; select CURRENT_TIME() from dual; select CURTIME from dual; -- CURRENT_TIMESTAMP() 当前时间戳 -- 2022-10-13 12:32:47 select CURRENT_TIMESTAMP from dual; -- DATE(datetime) 返回datetime的日期部分 -- 2022-10-13 select date(now()) from dual; -- DATE_ADD(date2,INTERVAL d_value d_type) 在date2上加上日期或者时间 -- 查询10分钟之内发布的信息 select * from mes where date_add(send_time,interval 10 minute)>=now(); -- DATE_SUB(date2,INTERVAL d_value d_type) 在date2上减去日期或者时间 -- 查询10分钟之内发布的信息 select * from mes where date_sub(now(),interval 10 minute) <= send_time; -- DATEDIFF(date1,date2) 两个日期差(结果是天) -- 比较'2011-11-11'和'1990-01-01'相差多少天 -- 7984 select datediff('2011-11-11','1990-01-01') from dual; -- TIMEDIFF(date1,date2) 两个时间差(差多少小时多少分钟多少秒) -- 04:01:01 select timediff('10:11:11','06:10:10') from dual; -- NOW() 当前时间 select now() from dual; -- YEAR|Month|DATE(datetime) FROM_UNIXTIME() 年月日 --- 自1970-01-01来的秒数 select year(now()) from dual; select UNIX_TIMESTAMP from dual; -- FROM_UNIXTIME(unix_timestamp,format) 将unix_timestamp秒数转换成执行格式,秒数实际上是数值 --2022-10-13 select FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y-%m-%d') from dual; -- 2022-10-13 13:06:00 select FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y-%m-%d %H:%i:%s') from dual;

 

1|43.加密和系统函数

 

 

-- USER() 查询用户 -- root@localhost select user() from dual; -- DATABASE() 数据库名称 select database(); -- MD5() 为字符串算出一个MD5 32的字符串,(用户密码)加密 select MD5('hsp') from dual; -- PASSWORD(str) 从原文密码str计算并返回密码字符串,通常用于对mysql数据库的用户密码加密 select password('hsp') from dual;

 


__EOF__

本文作者blanset
本文链接https://www.cnblogs.com/blanset/p/16787326.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   求道之愚者  阅读(51)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示