--加密32位字符
select md5('123456')

--获取字符串的长度(一个中文三个长度)
select LENGTH('呵呵')

--获取字符串字符个数
select CHAR_LENGTH('呵呵')

--删除前导空格
SELECT CHAR_LENGTH(ltrim(' mysql'))

--删除前导空格
SELECT LTRIM(' mysql')

--删除后续空格
select rtrim('mysql ')

--同时删除前后端空格
SELECT TRIM(' mysql ')

--删除后导某些字符
SELECT TRIM(TRAILING'@@'from '@@mysql@@')

--删除前导某些字符
SELECT TRIM(LEADING'@@'from '@@mysql@@')

--字符串截取(从1开始)
SELECT SUBSTRING('mysql database' ,3,3)

--字符串替换('单引号别忘了')
SELECT REPLACE('mysql database','a', 'A')

--字符串反转
SELECT REVERSE('mysql')

--返回n个前导空格构成的字符串
SELECT LENGTH(SPACE(4))

--字符串拼接
SELECT CONCAT('msql',SPACE(2),'database')

--使用制定的字符连接字符串
SELECT CONCAT_WS(' ','mysql','database')

--数字格式化
SELECT FORMAT(31415.926,2)

--字母转大写
SELECT UPPER('java')

--字母转小写
SELECT LOWER('JAVA')

--获取左边字符
SELECT LEFT('java',2)

--获取右侧字符
SELECT RIGHT('java',2)

--比较字符串(相等为0,前者大与后者为1,后者大与前者为-1)
SELECT STRCMP('A','B')

--取绝对值
SELECT ABS(-3);

--进一取整
SELECT CEIL(3.14)

--舍一取整
SELECT FLOOR(3.14)

--求商
SELECT 5 DIV 2

--求模
SELECT MOD(5,2)

--幂运算
SELECT POW(5,5)

--四舍五入
SELECT ROUND(3.14)

--取圆周率
SELECT PI()

--截断数字
SELECT TRUNCATE(PI(),2)

--返回0~1之间的随机数
SELECT RAND()

--获取当前时间
SELECT NOW()

--获取当前日期
SELECT CURRENT_DATE()

--获取当前时间
SELECT CURRENT_TIME()

--返回日期date加上间隔时间int的结果
SELECT DATE_ADD(NOW(),INTERVAL 2 DAY)

--返回日期date减去间隔时间int的结果
SELECT DATE_SUB(NOW(),INTERVAL 2 DAY)

--求日期之差('单引号别忘了')
SELECT DATEDIFF('2019-07-31','2019-07-29')

--日期格式化
SELECT DATE_FORMAT(NOW(),'%Y%m%d %H%i%s')

-- 查看当前库所有自定义函数
SELECT * FROM MYSQL.PROC WHERE 1 = 1 AND DB = 'test' AND TYPE = 'FUNCTION';

-- 查看当前库某个自定义函数的定义
SHOW CREATE FUNCTION GET_STUDENT_NAME;

-- 删除某自定义函数
DROP FUNCTION GET_STUDENT_NAME;

-- 创建自定义函数
DELIMITER ;;
CREATE FUNCTION GET_STUDENT_NAME(vsno CHAR(6))
RETURNS VARCHAR(20)
BEGIN
DECLARE rname VARCHAR(20) DEFAULT '';
SELECT SNAME INTO rname FROM T_STUDENT WHERE SNO = vsno;
RETURN rname;
END
;;
DELIMITER ;

-- 使用自定义函数
SELECT GET_STUDENT_NAME('S20165');

-- 查看当前库有所有自定义过程
SELECT * FROM MYSQL.PROC WHERE 1 = 1 AND DB = 'test' AND TYPE = 'PROCEDURE';

-- 查看当前库某个自定义过程的定义
SHOW CREATE PROCEDURE PROC_GET_STUDENT_NAME;

-- 删除存储过程
DROP PROCEDURE PROC_GET_STUDENT_NAME;

-- 创建存储过程
DELIMITER ;;
CREATE PROCEDURE PROC_GET_STUDENT_NAME(IN vsno CHAR(6), OUT rname VARCHAR(20))
BEGIN
SELECT SNAME INTO rname FROM T_STUDENT WHERE SNO = vsno;
END
;;
DELIMITER ;

-- 调用存储过程
call PROC_GET_STUDENT_NAME('S20165', @rname) ;
SELECT @rname;

--数据库关联
SELECT * FROM a a
INNER JOIN b b
ON a.id=b.id
WHERE a.id=1

--在数据库创建账号密码表
CREATE TABLE sys_user (
id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL,
PASSCODE CHAR(32) NOT NULL,
status TINYINT UNSIGNED NOT NULL DEFAULT '1'
);

                 

函数名

描述

LENGTH(str)

获取字符串长度

CHAR_LENGTH(str)

获取字符串的字符个数

LTRIM(str)

删除前导空格

RTRIM(str)

删除后续空格

TRIM([{both | leading | trailing} [remstr] from] str)

删除前导和后续空格

SUBSTRING(str, pos[, len])

字符串截取

REPLACE(str, from_str, to_str)

字符串替换

REVERSE(str)

字符串反转顺序

SPACE(n)

返回由n个空格构成的字符穿

                  

                 

函数名

描述

CONCAT(column | str)

字符连接

CONCAT_WS(separator, str1, st2, …)

使用指定的分隔符进行字符连接

FORMAT(X, D[, locale])

数字格式化

LOWER(column | str)

转化成小写字母

UPPER(column | str)

转化为大写字符

LEFT(str, len)

获取左侧字符

RIGHT(str, len)

获取右侧字符

STRCMP(str1, str2)

两个字符串相同返回0,前者大于后者返回1,前者小于后者返回-1

                 

函数名

描述

ABS(x)

取绝对值

CEIL(x)

进一取整

DIV

整数除法

FLOOR(x)

舍一取整

MOD(x, y)

取余数(模)

POWER(x, y)

幂运算

ROUND(x, y)

四舍五入

TRUNCATE(x, y)

截断数字

PI()

取圆周率π的值

RAND()

返回0到1之间的伪随机数

                    

名称

描述

[NOT] BETWEEN…AND…

[不]在范围内

[NOT] IN()

[不]在列出的范围内

IS [NOT] NULL

[不]为空

                   

函数名

描述

NOW()

当前日期和时间

CURDATE()或CURRENT_DATE()

当前日期

CURTIME()或CURRENT_TIME()

当期时间

DATE_ADD(date, INTERVAL int keyword)

返回日期date加上间隔时间int的结果

DATE_SUB(date, INTERVAL int keyword)

返回日期date加上间隔时间int的结果

DATEDIFF(date1, date2)

日期差值

DATE_FORMAT(date, fmt)

日期格式化

      

                 

函数名

描述

CONNECTION_ID()

连接ID

DATEBASE()

当前数据库

LAST_INSERT_ID()

最后插入记录的ID号

USER()

当前用户

VERSION()

版本信息

                    

函数名

描述

AVG()

平均值

COUNT()

计数

MAX()

最大值

MIN()

最小值

SUM()

求和

                    

函数名

描述

MD5()

数据摘要算法

PASSWORD()

密码算法

语法

MySQL函数和过程(三)的更多相关文章

  1. mysql 函数 存取过程

    1.打开数据库 2.选择函数,点击新建函数,选择过程,点击完成 4.写入自己要添加的sql语句 5.点击CTAL + S 保存,如若报错则语法或函数错误

  2. Mysql 函数使用记录(三)——UNIX_TIMESTAMP() 、UNIX_TIMESTAMP(date)

    参考资料:https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_unix-timestamp UN ...

  3. MySql创建函数与过程,触发器, shell脚本与sql的相互调用。

    一:函数 1:创建数据库和表deptartment, mysql> use DBSC; Database changed mysql), ), )); Query OK, rows affect ...

  4. 三十四、MySQL 函数

    MySQL 函数 MySQL 有很多内置的函数,以下列出了这些函数的说明. MySQL 字符串函数 函数 描述 实例 ASCII(s) 返回字符串 s 的第一个字符的 ASCII 码. 返回 Cust ...

  5. mysql自定义函数与过程中写法的注意事项

    BEGIN #Routine body goes here... /* update szzx_goods_common set gc_id=i where gc_name=(SELECT gc_na ...

  6. MySQL系列教程(三)

    mySQL集群(cluster) 这一章,我根本不打算写,因为mySQL 的 官方Cluster方案基本上都是bullshit,尤其是它的官方集群方案,竟然都无人维护了,而且mySQL集群完全可以用眼 ...

  7. Mysql - 函数

    Mysql提供的函数是在是太多了, 很多我都见过, 别说用了. 园子里面, 有人弄了一个比较全的. MYSQL函数 我这里会将他写的完全拷贝下来, 中间会插入一些自己项目中使用过的心得 一.数学函数 ...

  8. 我的MYSQL学习心得(三) 查看字段长度

    我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  9. MySQL 函数大全

    mysql函数大全 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NU ...

随机推荐

  1. Razor传值到js

    1.Asp.net MVC 3 中Session与ViewBag传值到Js中 http://www.cnblogs.com/wintersun/archive/2012/06/04/2534975.h ...

  2. tinymce+粘贴word图片例子

    tinymce是很优秀的一款富文本编辑器,可以去官网下载.https://www.tiny.cloud 这里分享的是它官网的一个收费插件powerpaste的旧版本源码,但也不影响功能使用. http ...

  3. ADC-DAC

    一,ADC 模拟信号 什么是模拟信号?主要是与离散的数字信号相对的连续的信号.模拟信号分布于自然界的各个角落,如每天温度的变化, 而数字信号是人为的抽象出来的在时间上不连续的信号.电学上的模拟信号是主 ...

  4. 【概率论】1-4:事件的的并集(Union of Events and Statical Swindles)

    title: [概率论]1-4:事件的的并集(Union of Events and Statical Swindles) categories: Mathematic Probability key ...

  5. Golang switch语句总结

    switch 语句基本结构 switch 条件表达式 { case 常量表达式1: 语句 1 case 常量表达式2: 语句 2 . . . case 常量表达式n: 语句 n default: 语句 ...

  6. 解析配置文件 redis.conf

    1.units单位 2.INCLUDES包含 3.GENERAL通用 1).daemonize daemonize yes 启用后台守护进程运行模式 2).pidfile pidfile /var/r ...

  7. 走进JavaWeb技术世界开篇:JavaWeb技术汇总

    微信公众号[Java技术江湖]一位阿里 Java 工程师的技术小站.(关注公众号后回复”Java“即可领取 Java基础.进阶.项目和架构师等免费学习资料,更有数据库.分布式.微服务等热门技术学习视频 ...

  8. 设置Python打印格式

    >>> def esc(code): ... return f'\033[{code}m' ... >>> print(esc('31;1;4') + 'reall ...

  9. java设计模式简述

    1.代理模式:有一个接口或者顶层类(可以是抽象的)A,一个实现类B,一个代理类C,代理类C之所以能够是代理类,是因为1.C也实现了A.2.C持有A的依赖,用来注入真实的实现B.3.C的实现方法中实际调 ...

  10. ubantu 安装boost库 c++connector

    安装libmysqlcppconn: sudo apt-get install libmysqlcppconn-dev 安装libboost: sudo apt-get install libboos ...