从头开始学MySQL
文章平均质量分 88
小大宇
能与优秀的人为伍自然就会变优秀
展开
-
跟着大宇学MySQL------目录帖
与君共勉 故不积跬步,无以至千里。不积小流,无以成江海。骐骥一跃不能十步,驽马十驾功在不舍。 谁都是从HelloWorld开始学习的,即使是架构师,也是一样。MySQL学习目录 从头开始学MySQL--------表的基本操作 从头开始学MySQL--------数据类型(1) 从头开始学MyS...原创 2022-02-22 19:58:00 · 3429 阅读 · 2 评论 -
mysql忽略大小写,lower_case_table_names配置
lower_case_table_names 是mysql一个大小写敏感设置的属性参数说明: lower_case_table_names: 此参数不可以动态修改,必须重启数据库 lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写 lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的 lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候...原创 2022-01-14 17:31:02 · 1495 阅读 · 0 评论 -
从头开始学MySQL-------存储过程与存储函数(2)
10.1.6 流程控制的使用 (1)IF语句的使用。DROP PROCEDURE IF EXISTS testIf;DELIMITER //CREATE PROCEDURE testIf(OUT result VARCHAR(255))BEGIN DECLARE val VARCHAR(255); SET val = 'a'; IF v...原创 2018-11-03 19:14:47 · 4835 阅读 · 0 评论 -
从头开始学MySQL-------存储过程与存储函数(3)
10.2.1 调用存储过程 存储过程必须使用CALL语句来调用。如果要调用其它数据库的存储过程,需要指定数据库名称。例如 CALL dbname.spnameDROP TABLE IF EXISTS t_student;CREATE TABLE t_student( id INT(11) PRIMARY KEY AUTO_INCREMENT, name V...原创 2018-11-03 19:22:55 · 4317 阅读 · 1 评论 -
从头开始学MySQL-------性能优化
1.使用LIKE关键字可能触发不了索引 首先执行下面的SQL,准备一些数据。DROP TABLE IF EXISTS t_student;CREATE TABLE `t_student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `age` int(11) DE...原创 2018-11-06 16:09:08 · 739 阅读 · 0 评论 -
从头开始学MySQL-------存储过程与存储函数(4)
存储过程与存储函数的补充MySQL的存储过程与存储函数有什么区别? 存储函数只能通过return语句返回单个值或者表对象。 存储过程不能用return,但是可以使用多个out参数返回多个值。存储过程如何修改代码? 虽然提供了ALTER PROCEDURE sp_name [存储特性],但是只能修改存储过程的存储特性,不能修改SQL...原创 2018-11-04 14:12:29 · 2729 阅读 · 1 评论 -
从头开始学MySQL-------视图
11.1.1 视图的含义 视图是一个虚拟的表,它是把数据库中的一张或者多张表中的一些数据列,拼接起来的虚拟的表。 创建视图的信息来自表的部分信息,只取需要的信息。当对通过视图看到的数据进行修改的时候,相应的基本表的数据也要发生变化。同时,若基本表的数据发生变化,则这种变化也可以自动的反映到视图中。 视图的好处:看到的就是需要的。另外,当视图表...原创 2022-02-22 19:51:25 · 1671 阅读 · 0 评论 -
从头开始学MySQL-------触发器
12.1.1 创建触发器 触发器是由事件触发的操作,这些事件包括INSERT、UPDATE、DELETE事件。触发器是一种特殊的存储过程,它预定义了一些SQL,不用CALL来调用。当指定的事件发生的时候,触发器就会自动执行。触发器语法:CREATE TRIGGER trigger_name trigger_time trigger_type ON table_...原创 2022-02-22 19:41:02 · 1464 阅读 · 2 评论 -
从头开始学MySQL-------函数深入探究
前言:虽然常见的Mysql函数,在平时的开发里面已经用的很多。但是还是会多多少少遇到一些不会的,或者好想会了,也好想不会的函数。 经常用函数,总会有书到用时方恨少的感觉。比如给我一个需求,用户传递一个时间,查询这个时间前后八小时内的订单。呃呃呃,(┬_┬),好像会写,好像也写不出来。。 因此,最近要恶补一下Mysql的函数。需要掌握的函数C...原创 2019-08-29 17:49:51 · 575 阅读 · 0 评论 -
从头开始学MySQL-------存储过程与存储函数(1)
10.1.1 创建存储过程 存储过程就是一条或者多条SQL语句的集合,可以视为批文件。它可以定义批量插入的语句,也可以定义一个接收不同条件的SQL。 创建存储过程的语句为 CREATE PROCEDURE,创建存储函数的语句为CREATE FUNCTION。 调用存储过程的语句为CALL。 调用存储函数的形式就像调用MyS......原创 2020-06-19 17:57:57 · 66898 阅读 · 6 评论 -
从头开始学MySQL--------索引
9.1.1 索引是什么 索引是一个单独的、存储在磁盘上的数据库结构,它们包含着对数据库表里所有记录的引用指针。使用索引用于快速找出在某个或者多个列中有一特定值的行。对相关列使用索引是提高查询操作速度的最佳途径。 如果有2万条记录,现在执行:SELECT * FROM table WHERE num = 10000;如果没有索引,那么需要遍历整个表,直到找到...原创 2019-11-18 10:40:16 · 880 阅读 · 0 评论 -
从头开始学MySQL--------查询(2)
7.2.11 对查询结果进行排序 根据字母进行排序,或者根据数字进行排序。默认是升序 ASCSELECT f_name, f_id, s_idFROM fruitsORDER BY f_name; 降序的话,只需要加上 DESCSELECT f_name, f_id, s_idFROM fruitsORDER BY s_...原创 2018-10-24 14:58:54 · 541 阅读 · 0 评论 -
从头开始学MySQL--------算术运算(3)
5.3.2 算术运算符 保留4位小数。如果除以的是0,那么返回的是NULL。DROP TABLE IF EXISTS t_operation;CREATE TABLE t_operation( number INT);INSERT INTO t_operation(number) VALUES(10);SELECT number...原创 2018-10-18 13:27:14 · 670 阅读 · 0 评论 -
从头开始学MySQL--------数据类型(1)
5.1.1 整数类型 整数类型 TINYINT SMALLINT MEDIUMINT INT BIGINT 。分别占12348字节。 INT(11)后面的数字11,表示的是这个数据能够显示的宽度。显示宽度只用于显示,不能限制取值范围与占用空间。 这里的宽度是指:如果插入的数据小于这个宽度,这个数值会由MySQL进行填充。CR...原创 2018-10-17 09:13:16 · 1087 阅读 · 0 评论 -
从头开始学MySQL--------函数
6.3.2 合并字符串 CONCAT(S1,S2,S3) CONCAT_WS(X,S1,S2,S3) WS的全称:WithSeparator,即带分隔符 CONCAT常用于连接字符串。如果有NULL,则返回NULL。 CONCAT_WS(X,S1,S2,S3),返回效果如 S1XS2XS3 。如果S1、S2、S3有NULL,那么会自动被忽略。...原创 2018-10-19 15:55:14 · 878 阅读 · 0 评论 -
从头开始学MySQL--------查询(1)
7.2.1 查询所有字段 使用通配符 * 来查询所有数据SELECT * FROM fruits; 优点:当不知道表的列名称的时候,可以节约时间,快速知道列的名称。 缺点:获取不需要的数据可能会降低查询的效率。而且会出现全表扫描,要谨慎使用。我同学的公司的数据库表,数据量通常都是百万级别的,用这个SQL语句出结果估计要等到太阳下山...原创 2018-10-24 09:58:08 · 543 阅读 · 0 评论 -
从头开始学MySQL--------数据类型(2)
5.1.4 字符串类型(1)char与varchar 长度是否可变,具体长度是什么,存的时候,取的时候 char是固定长度的字符串,字符串长度由定义的时候指明。如果插入的字符串没有达到定义的长度,那么就用空格补充。在取出的时候,会去掉尾部的所有空格。例如,插入‘a’到char(4)中的结果是'a ',即字符a加上3个空格。 var...原创 2018-10-17 15:30:48 · 554 阅读 · 0 评论 -
从头开始学MySQL--------内连接、左连接、右连接(4)
7.4.1 内连接 内连接通过比较运算符在不同的表之间操作,并列出不同的表中连接条件相同的数据行,将其拼接成新的记录。也就是说,只有满足条件的记录才能出现在结果关系中。DROP TABLE IF EXISTS t_student;CREATE TABLE t_student( id INT(11) PRIMARY KEY AUTO_INCREMENT, ...原创 2018-10-28 12:33:13 · 734 阅读 · 2 评论 -
从头开始学MySQL--------子查询(5)
7.5.1 带ANY、SOME、ALL的子查询 子查询是指一个查询语句嵌套在另外一个查询语句中的查询。 在SELECT子句中先计算子查询,子查询结果作为来外外层另外一个查询的过滤条件。即另外一个查询的查询条件就是子查询中返回的数据记录。CREATE TABLE tbA(num1 INT NOT NULL);CREATE TABLE tbB(num2 I...原创 2018-10-28 14:09:24 · 566 阅读 · 0 评论 -
从头开始学MySQL--------合并查询(6)
7.6.1 合并查询结果集 如果使用UNION ALL 可以连接多条查询语句,并将它们的结果集组合起来。 语法为 SELECT column ,... FROM table1 UNION [ ALL ] SELECT column ,... FROM table2 不加ALL的效...原创 2018-10-28 15:32:43 · 589 阅读 · 0 评论 -
从头开始学MySQL--------增删改
8.1.1 为表的所有字段插入数据 标准的插入语法为:为表中的所有的列插入数据,一 一对应。 使用该语句的时候,字段列和数据值的数量必须相同。 INSERT INTO table_name(COLUMN_LIST) VALUES( VALUE_LIST );DROP TABLE IF EXISTS t_person;CREAT...原创 2018-10-28 17:28:58 · 667 阅读 · 0 评论 -
从头开始学MySQL--------表的基本操作
注意点提醒: 表结构变化之前要备份,因为数据是无法恢复的。 不是每张表都是需要主键的! 有外键关联的两张表必须使用相同的存储引擎。 自增属性默认从1开始。如果你插入的id是5,那么下次自增的id属性就是6。4.1.1 获取所有数据库 show databases; 在创建表之前应该...原创 2018-10-12 16:25:55 · 1188 阅读 · 0 评论