为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
与MySQL的零距离接触_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 【自定义函数】简称UDF;是对MySQL扩展的一种途径 语法: CREATE FUNCTION .... ------------------------------------------ test CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `test` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 创建一个函数: 没有参数的函数: CREATE FUNCTION f1() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点%i分%s秒'); 带参数的函数: CREATE FUNCTION f2(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED) RETURNS FLOAT(10,2) UNSIGNED RETURN (num1+num2)/2; 说明 f1、f2是函数名 num1、num2是形参 RETURNS (returns) 后面跟的是返回值的数据类型 RETURN 后面跟的是函数体 创建一个执行多条sql语句的函数 f3(),并放回主键 如果有多条sql语句,必须放在 BEGIN 与END 之间 修改 结束符号成 ## 原本是; 当然你也可以改回来 1、DELIMITER ## 创建一个函数(功能是传递一个参数,参数是表 test 的test字段值,返回插入数据的主键) 2、CREATE FUNCTION f3(test varchar(20)) RETURNS INT UNSIGNED BEGIN INSERT `test`(`test`)values(test); RETURN LAST_INSERT_ID(); END ## 修改结束符变回 ; (delimiter) 3、DELIMITER ; 删除一个函数: DROP FUNCTION IF EXISTS `f1`; 调用一个函数: SELECT f1(); SELECT f2(23,2);
    查看全部
    0 采集 收起 来源:课程回顾

    2016-09-12

  • 修改分隔符:DELMITER 分隔符 例:DELIMITER // /* 将分隔符修改为 '//' 当函数体内需要执行的是多条语句时,要使用BEGIN...END语句, 且当编写函数体内容的时候,需要使用 DELIMITER 关键字将分隔符先修改为别的,否则编写语句的时候写到 ';' 的时候会直接执行,导致函数编写失败, 删除函数:DROP FUNCTION [IF EXISTS] function_name */ 例: DELIMITER // CREATE FUNCTION ADD_USER(p_id SMALLINT,username VARCHAR(20)) RETURNS INT UNSIGNED BEGIN INSERT user(p_id,username) VALUES(p_id,username); RETURN LAST_INSERT_ID(); END
    查看全部
  • 例子: CREATE FUNCTION SHOW_AVG(num1 SMALLINT UNSIGNED , num2 SMALLINT UNSIGNED) RETURNS FLOAT(10,2) UNSIGNED RETURN (num1 + num2)/2; 删除函数:DROP FUNCTION function_name; 查询函数:SHOW FUNCTION STATUS; 调用函数:SELECT f2(10,15);
    查看全部
  • (1)用date_format()函数写出想要的日期表达方式 SELECT DATE_FORMAT(NOW(),'%Y年 %m月 %d日 %H点:%i分:%s秒'); (2)用自定义函数写出想要的日期表达方式 CREATE FUNCTION f1() RETURNS VARCHAR(30)//创建一个f1()函数 RETURN DATE_FORMAT(NOW(),'%Y年 %m月 %d日 %H点:%i分:%s秒');//返回值 SELECT f1();//调用自定义函数f1();
    查看全部
  • 1、自定义函数 用户自定义函数(user-defined function, UDF)是一种对MySQL扩展的途径, 其用法与内置函数相同。 自定义函数的两个必要条件: a.参数 b.返回值 -函数可以返回任意类型的值,同样可以接受这些类型的参数; -函数的参数与返回值之间,没有必然的联系。 2、创建自定义函数 CREATE FUNCTION function_name RETURNS {STRINGINTEGERREALDECIMAL} routine_body - 函数体
    查看全部
  • MySQL内置函数分类: 一、字符函数 (1)CONCAT()//字符连接 (2)CONCAT_WS()//使用指定的分隔符进行字符连接 (3)FORMAT()//数字格式化 (4)LOWER()//转化小写 (5)UPPER()//转换大写 (6)LEFT()//获取左侧字符 (7)RIGHT()//获取右侧字符 (8)LENGTH()//取得字符串长度 (9)LTRIM(),RTRIM(),TRIM()//删除前导、后续空格或者指定字符 (10)REPLACE()//替换 (11)SUBSTRING()//字符串截取 (12)[NOT] LIKE//模式匹配——百分号%代表任意个字符;下划线_代表任意一个字符 二、数值函数 (1)CEIL()//进一取整 (2)FLOOR()//舍一取整 (3)DIV//整数除法 (4)MOD//取余数,与%一样 (5)POWER()//幂运算 (6)ROUND()//四舍五入 (7)TRUNCATE()//截断 三、比较函数 (1)[NOT] BETWEEN...AND... //[不]范围之内 (2)NOT IN() //[不]在列出值范围内 (3)IS [NOT] NULL //[不]为空 四、日期时间函数 (1)SELECT NOW(); // 当前日期时间 (2)SELECT CURDATE(); // 当前日期 (3)SELECT CURTIME(); // 当前时间 (4)SELECT DATE_ADD();//日期的变化 (5)DATEDIFF(); // 日期的差值 (6)DATE_FORMAT(); // 日期格式化 五、信息函数 (1)SELECT CONNECTION_ID() //连接ID (2)SELECT DATABASE() //当前数据库 (3)SELECT LAST_INSERT_ID() //最后插入记录的ID (4)SELECT USER() //当前用户 (5)SELECT VERSION() //版本信息 六、聚合函数 (1)AVG()//平均值 (2)COUNT()//计数 (3)MAX()//最大值 (4)MIN()//最小值 (5)SUM()//求和 七、加密函数 (1)MD5();//信息摘要算法 (2)PASSWORD();//加密算法,主要用途修改当前用户密码
    查看全部
    0 采集 收起 来源:回顾和概述

    2016-09-12

  • MD5():信息摘要算法 select md5('admin');//给admin加密。如果mysql中的信息是为了web开发做准备,那么尽量使用md5 2、password():密码算法 set password=password(‘1236’)修改了当前登录密码为1236
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2016-09-12

  • MySQL目录结构: bin目录:存储可执行文件 data目录:存储数据文件 docs:文档 include目录:存储包含的头文件 lib目录:存储库文件 share:错误消息和字符集文件
    查看全部
  • 聚合函数只有一个返回值 AVG() - 平均值 SELECT ROUND(AVG(goods_price),2) AS avg_price FROM tdb_goods; COUNT() - 计数 SELECT COUNT(goods_id) as counts FROM tdb_goods; MAX() - 最大值 SELECT MAX(goods_price) as counts FROM tdb_goods; MIN() - 最小值 SUM() - 求和 SELECT SUM(goods_price) as counts FROM tdb_goods;
    查看全部
    0 采集 收起 来源:MySQL 聚合函数

    2016-09-12

  • SELECT CONNECTION_ID(); ==>2 /*连接ID SELECT DATABASE(); /*当前打开的数据库 SELECT LAST_INSERT_ID(); /*最后插入的记录 同时写入多条记录是只返回写入的第一条的id。而且表中必须要有自动编号的字段。 DESC tab_name; /*查看数据库字段及属性,查看表结构 SELECT USER(); /* 打印当前用户信息 SELECT VERSION(); /*打印当前数据库信息
    查看全部
    0 采集 收起 来源:MySQL 信息函数

    2018-03-22

  • (1)SELECT NOW(); // 当前日期时间。 (2)SELECT CURDATE(); // 当前日期。 (3)SELECT CURTIME(); // 当前时间。 (4)SELECT DATE_ADD('2014-3-12',INTERVAL [-]365 DAY); // 2015-03-12,DAY还可以替换为WEEK,MONTH,YEAR等。DATE_ADD不是增加的意思,是变化,既可以增加,也可以减去。 (5)DATEDIFF(); // 日期的差值。 DATEDIFF('2013-3-12','2014-3-12'); // -365 日期差值。 (6)DATE_FORMAT(); // 日期格式化。 SELECT DATE_FORMAT('2014-3-2','%m%d%Y'); // 03/02/2014('%'带有前导0作用)。
    查看全部
  • 1、[NOT]BETWEEN...AND...[不]在范围之内,结果返回1或0。 例如:15 BETWEEN 10 AND 16; //1。 2、[NOT]IN()列出值选项。 例如:SELECT 10 IN(5,10,25); //1。 3、IS [NOT] NULL:只有NULL IS [NOT] NULL返回1,其他情况(包括'',0)都返回0。
    查看全部
  • 数值运算符和函数<br> SELECT CEIL(3.01) ==>4 /*有n.xx 都是n+1 进一取整 向上取整<br> SELECT FLOOR(3.99) ==>3 /*取n.xx 都是n 舍一取整 向下取整<br> SELECT 3 DIV 4 ==> 0 /*整数除法,取商<br> SELECT 3/4 ==>0.75 /*除法<br> SELECT 2.1 MOD 2 ==>0.1 /*取余数(取模) 被除数是整数,小数都可以<br> SELECT 21 % 2 ==>1 /*取余数 mod=% SELECT POWER(3,4) ==>81 /*3的4次方 幂运算<br> SELECT ROUND(3.1415926,4) ==>3.1416 /*四舍五入,保留4位小数<br> SELECT TRUNCATE(123.89,1) ==>123.8 /*截取小数点后的位数<br> SELECT TRUNCATE(123.89,0) ==>123 /*截取小数点后的位置,0位为整数部分<br> SELECT TRUNCATE(123.89,-1) ==>120 /*截取-1,从个位起去掉后面的数值替换为0
    查看全部
  • (8)LENGTH():取得字符串长度 LENGTH('MYSQL ’);//6;最后加了个空格 (9)LTRIM():清空字符串前面(左端)空格 (10)RTRIM():清空字符串末尾(右端)空格 (11)TRIM():删除前导、后续空格或者指定字符 SELECT TRIM(' MySQL '); SELECT TRIM(LEADING '?' FROM '??MYSQL???'); //删除前导? SELECT TRIM(TRAILING '?' FROM '??MYSQL???'); //删除后续? SELECT TRIM(BOTH '?' FROM '??MYSQL???'); //前后均删除,但不能删除中间的? (12)REPLACE():替换 SELECT REPLACE('MY???SQL','?',''); //将问号换成空白,即去掉? SELECT REPLACE('MY???SQL','?','~~'); //可以将n个?换成m个组合符号 (13)SUBSTRING():字符串截取(从1开始,编程里可能从0开始) SELECT SUBSTRING('mYSQL',1,2); //从字符串中的第一个位置开始截取2个字符mY SELECT SUBSTRING('mYSQL',3); //SQL 从第3的位置开始截取到结束 SELECT SUBSTRING('mYSQL',-2); //QL 从倒数第2位开始截取到结束 SELECT SUBSTRING('mYSQL',-3,-1); //F,长度不能是负的,但是有些编程语言支持,而mysql不支持 (14)[NOT] LIKE:模式匹配(百分号%代表任意个字符; 下划线_代表任意一个字符) 例子:"tom%" SELECT * FROM test WHERE first_name LIKE '%1%%' ESCAPE '1'; // 去除'1'后面的编译,查找包含'%'符号的信息
    查看全部
    0 采集 收起 来源:MySQL 字符函数

    2018-03-22

  • 一、子查询——出现在【其他SQL语句内】的SELECT子句 eg: SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2); 其中,SELECT * FROM t1 ...称为Outer Query[外查询](或者Outer Statement) SELECT column1 FROM t2 称为Sub Query[子查询] 说明: 子查询必须始终出现在【圆括号内】 子查询可以包含多个关键字或者条件,如DISTINCT,GROUP BY,ORDER BY,LIMIT,函数等 子查询的外层查询可以是:【SELECT,INSERT,UPDATE,SET或DO】 子查询可以返回值:标量、一行、一列或者子查询 引发子查询:比较运算符,IN/NOT IN ,EXIST/NOT EXIST 二、连接——MySQL在SELECT语句、多表更新、多表删除语句中都支持JOIN操作 语法结构 table reference A [AS alias_name1] {[INNER CROSS] JOIN {LEFT RIGHT} [OUTER] JOIN} table_reference B [AS alias_name1] ON condition_expr 说明: 1.table_subquery可以作为子查询使用在FROM子句中,这样的子查询必须为其赋予别名 2.内连接显示的是左表和右表当中都符合连接条件的记录;外链接有分为左外连接和右外连接,左外连接显示的是左表中的全部记录和右表符合条件的记录,右外连接则相反
    查看全部
    0 采集 收起 来源:回顾和概述

    2016-09-12

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!