mysql轻松学
从mysql基础知识(比较详细)讲起,后面会讲到各种优化
我才是真的封不觉
某外企高级开发,菜鸟一个,希望在博客记录自己技术的成长,目标是成为一个好脾气的技术大牛。
b站账号 觉哥学java
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mysql之连接查询(交叉连接,内连接,外连接,using关键字使用场景)
连接查询连接查询:将多张表连到一起进行查询(会导致记录数行和字段数列发生改变)连接查询的意义在关系型数据库设计过程中,实体(表)与实体之间是存在很多联系的。在关系型数据库表的设计过程中,遵循着关系来设计:一对一,一对多和多对多,通常在实际操作的过程中,需要利用这层关系来保证数据的完整性。连接查询分类连接查询一共有以下几类:交叉连接内连接外连接:左外连接(左连接)和右...原创 2018-10-13 13:18:23 · 8193 阅读 · 8 评论 -
联合查询 union
联合查询基本概念联合查询是可合并多个相似的选择查询的结果集。等同于将一个表追加到另一个表,从而实现将两个表的查询组合到一起,使用谓词为UNION或UNION ALL。联合查询:将多个查询的结果合并到一起(纵向合并):字段数不变,多个查询的记录数合并。应用场景1、 将同一张表中不同的结果(需要对应多条查询语句来实现),合并到一起展示数据男生身高升序排序,女生身高降序排序2...原创 2018-10-13 12:39:16 · 1014 阅读 · 0 评论 -
mysql运算符详细讲解(后面有总结)
查询中的运算符算术运算符+、-、*、/、%基本算术运算:通常不在条件中使用,而是用于结果运算(select 字段中)比较运算符>、>=、<、<=、=、<>通常是用来在条件中进行限定结果=:在mysql中,没有对应的 ==比较符号,就是使用=来进行相等判断<=>:相等比较特殊应用:就是在字段结果中进行比较运算...原创 2018-10-13 10:33:47 · 550 阅读 · 0 评论 -
SQL高级操作之四—查询数据精讲之四(limit 分页)
分页利用limit来限制获取指定区间的数据。基本语法:limit offset,length; //offset偏移量:从哪开始,length就是具体的获取多少条记录Mysql中记录的数量从0开始limit 0,2; 表示获取前两条记录注意:limit后面的length表示最多获取对应数量,但是如果数量不够,系统不会强求...原创 2018-10-13 00:02:34 · 679 阅读 · 0 评论 -
SQL高级操作之四—查询数据精讲之三(group by + having +orderby)
Group by子句Group by表示分组的含义:根据指定的字段,将数据进行分组:分组的目标是为了统计分组统计(画重点:group by 就是用于分组的)基本语法: group by 字段名;Group by是为了分组后进行数据统计的,如果只是想看数据显示,那么group by没什么含义:group by将数据按照指定的字段分组之后,只会保留每组的第一条记录。利用一些统...原创 2018-10-12 23:50:14 · 650 阅读 · 2 评论 -
SQL高级操作之四—查询数据精讲之二(where)
Where字句:用来从数据表获取数据的时候,然后进行条件筛选。数据获取原理:针对表去对应的磁盘处获取所有的记录(一条条),where的作用就是在拿到一条结果就开始进行判断,判断是否符合条件:如果符合就保存下来,如果不符合直接舍弃(不放到内存中)Where是通过运算符进行结果比较来判断数据。...原创 2018-09-09 23:06:42 · 530 阅读 · 0 评论 -
SQL高级操作之四—查询数据精讲之一(where前)
查询数据完整的查询指令:Select select选项 字段列表 from 数据源 where条件 group by分组 having条件 order by排序 limit限制;因内容过多,此篇讲解where 之前的语句,where条件 group by分组 having条件 order by排序 limit限制后面会分篇细述Select选项:系统该如何对待查询得到的结果A...原创 2018-09-09 23:03:31 · 428 阅读 · 0 评论 -
SQL高级操作之三——删除数据(删除数据后如何修改主键自增长值使得新增数据后自增长id仍然连续)
删除数据 1、 删除数据的时候尽量不要全部删除,应该使用where进行 判定;2、 删除数据的时候可以使用limit来限制要删除的具体数量Delete删除数据的时候无法重置auto_increment(可以看看)(1)创建带自增长主键的表(2)插入三条数据(3)把id为2,3的两行数据删除然后再新增一条,然后再新增一条数据,我们知道再次新增时,新增行id会变为4...原创 2018-09-02 19:03:42 · 3265 阅读 · 0 评论 -
SQL高级操作之二——更新数据(带条件并限制个数的更新)
1、 在更新数据的时候,特别要注意:通常一定是跟随条件更新Update 表名 set 字段名 = 新值 where 判断条件;2、 如果没有条件,是全表更新数据。但是可以使用limit 来限制更新的数量;Update 表名 set 字段名 = 新值 [where 判断条件] limit 数量;(1)创建表:上一篇(新增数据时使用蠕虫复制得到的表数据)(2).将前两个名为小白...原创 2018-09-02 14:43:19 · 7356 阅读 · 0 评论 -
SQL高级操作之一——新增数据(主键冲突更新,主键冲突替换,蠕虫复制)
新增数据先创建一张表 多数据插入只要写一次insert指令,但是可以直接插入多条记录基本语法:insert into 表名 [(字段列表)] values(值列表), (值列表)…;主键冲突主键冲突:在有的表中,使用的是业务主键(字段有业务含义),但是往往在进行数据插入的时候,又不确定数据表中是否已经存在对应的主键。先创建一张带业务主键的表 主键...原创 2018-09-02 13:00:27 · 7234 阅读 · 1 评论 -
如何把表1中的某些字段的数据插入到表2的某些字段中
insert into 表2(字段名1,字段名2, .....)select 字段名1,字段名1, ...from 表1where ...其中表1的字段1,2必须与表2的字段1,2的类型必须一致,否则报错原创 2018-08-27 19:42:11 · 1595 阅读 · 0 评论 -
表关系与表设计方案讲解(一对一,一对多,多对多)
表关系表关系:表与表之间(实体)有什么样的关系,每种关系应该如何设计表结构。一对一一对一:一张表中的一条记录与另外一张表中最多有一条明确的关系:通常,此设计方案保证两张表中使用同样的主键即可学生表 学生ID(PRI) 姓名 年龄 性别 籍贯 婚否 ...原创 2018-08-26 22:13:39 · 1866 阅读 · 2 评论 -
mysql之列属性篇六之 —— 唯一键(unique)
唯一键(唯一键是索引一种)唯一键:unique key,用来保证对应的字段中的数据唯一的主键也可以用来保证字段数据唯一性,但是一张表只有一个主键。1、 唯一键在一张表中可以有多个。2、 唯一键允许字段数据为NULL,NULL可以有多个(NULL不参与比较)创建唯一键创建唯一键与创建主键非常类似1、 直接在表字段之后增加唯一键标识符:unique[ key]2、 在所...原创 2018-08-26 22:07:35 · 3612 阅读 · 0 评论 -
mysql之列属性篇五之 —— 自动增长(auto_increment)
自动增长自动增长:auto_increment,当给定某个字段该属性之后,该列的数据在没有提供确定数据的时候,系统会根据之前已经存在的数据进行自动增加后,填充数据。通常自动增长用于逻辑主键。原理自动增长的原理:1、 在系统中有维护一组数据,用来保存当前使用了自动增长属性的字段,记住当前对应的数据值,再给定一个指定的步长2、 当用户进行数据插入的时候,如果没有给定值,系统在原...原创 2018-08-26 22:05:16 · 13346 阅读 · 0 评论 -
mysql之列属性篇四之 —— 主键(primary key)
主键顾名思义:主要的键,primary key,在一张表中,有且只有一个字段,里面的值具有唯一性创建主键随表创建系统提供了两种增加主键的方式1、 方案1:直接在需要当做主键的字段之后,增加primary key属性来确定主键2、 方案2:在所有字段之后增加primary key选项:primary key(字段信息)表后增加基本语法:alter table...原创 2018-08-26 22:01:20 · 2915 阅读 · 0 评论 -
mysql之列属性篇三之 —— 列描述(comment)
列描述列描述:comment,是专门用于给开发人员进行维护的一个注释说明基本语法:comment ‘字段描述’;查看Comment:必须通过查看表创建语句把create Table里面的文本复制出来即可看到注释...原创 2018-08-26 21:58:38 · 1678 阅读 · 0 评论 -
mysql之列属性篇二之 —— 默认值(default)
默认值Default:默认值,当字段被设计的时候,如果允许默认条件下,用户不进行数据的插入,那么就可以使用事先准备好的数据来填充:通常填充的是NULL 测试:不给当前字段提供数据值 没有填充的字段显示为默认值18Default关键字的另外一层使用:显示的告知字段使用默认值:在进行数据插入的时候,对字段值直接使用default ...原创 2018-08-26 21:55:50 · 3196 阅读 · 0 评论 -
mysql之列属性篇一之 —— null
Null属性NULL属性:代表字段为空如果对应的值为YES表示该字段可以为NULL,如下许多字段默认都可以为null,下面的d4是timestamp类型不能为null,插入null时会自动插入当前时间注意:1、 在设计表的时候,尽量不要让数据为空(设计时在类型后加not null即可)2、 Mysql的记录长度为65535个字节,如果一个表中有字段允许为NULL,那么...原创 2018-08-26 21:53:41 · 599 阅读 · 0 评论 -
mysql列类型四 —— 字符串类型(char,varchar,text,set)
字符串型Char定长字符:指定长度之后,系统一定会分配指定的空间用于存储数据基本语法:char(L),L代表字符数(中文与英文字母一样),L长度为0到255Varchar变长字符:指定长度之后,系统会根据实际存储的数据来计算长度,分配合适的长度(数据没有超出长度)基本语法:Varchar(L),L代表字符数,L的长度理论值位0到65535因为varchar要记录数据长...原创 2018-08-21 23:03:21 · 6516 阅读 · 1 评论 -
mysql列类型三——时间日期类型(Date,Time,Datetime,Timestamp,Year)
时间日期类型Date日期类型:系统使用三个字节来存储数据,对应的格式为:YYYY-mm-dd,能表示的范围是从1000-01-01 到9999-12-12,初始值为0000-00-00Time时间类型:能够表示某个指定的时间,但是系统同样是提供3个字节来存储,对应的格式为:HH:ii:ss,但是mysql中的time类型能够表示时间范围要大的多,能表示从-838:59:59~83...原创 2018-08-21 19:47:27 · 17682 阅读 · 0 评论 -
mysql列类型二——小数类型(float,double,decimal)
小数类型专门用来存储小数的在Mysql中将小数类型又分为两类:浮点型和定点型浮点型浮点型又称之为精度类型:是一种有可能丢失精度的数据类型,数据有可能不那么准确(由其是在超出范围的时候)浮点型之所以能够存储较大的数值(不精确),原因就是利用存储数据的位来存储指数整型:所有位都为1 1 1 1 ...原创 2018-08-21 19:45:29 · 57845 阅读 · 0 评论 -
mysql列类型一 —— 整型(Tinyint,Smallint,Mediumint,Int,Bigint)
概述:这几篇会详细讲讲解mysql中的字段类型,大体上包括:整数类型,小数类型,时间日期类型,字符串类型,set(集合)类型,包括详细介绍,使用场景以及一些常用扩展知识整数类型Tinyint迷你整形,系统采用一个字节来保存的整形:一个字节 = 8位,最大能表示的数值是0-255Smallint小整形,系统采用两个字节来保存的整形:能表示0-65535之间Mediumi...原创 2018-08-21 19:43:34 · 1232 阅读 · 0 评论 -
mysql字符集剖析 ——根治乱码问题
字符集字符编码概念字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。在计算机中所看到的任何内容都是字符构成的。字符编码(character code)是计算机针对各种符号,在计算机中的一种二进制存储代号。字符集概念字符集(Character set)是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同。常见字符集名...原创 2018-08-13 21:28:52 · 296 阅读 · 0 评论 -
SQL基本操作——数据操作
插入操作本质含义:将数据以SQL的形式存储到指定的数据表(字段)里面 基本语法:向表中指定字段插入数据Insert into 表名[(字段列表)] values(对应字段列表) 1、 注意:后面(values中)对应的值列表只需要与前面的字段列表相对应即可(不一定与表结构完全一致)2、 注意:字段列表并不一定非要有所有的表中字段个数与表字段不一致顺序个数与...原创 2018-08-13 20:47:57 · 557 阅读 · 0 评论 -
SQL基本操作——表操作(精讲)
下面的内容将包括 1.创建数据表(普通创建与复制已有表结构创建)2.多维度显示数据表(显示所有表,匹配显示表与显示表结构)3.多维度修改表(设置表属性,修改表结构删除表结构)一.创建数据表1.1普通创建 格式表是依赖于库的,创建表有两种方式(1)在数据表名字前面加上数据库名字,用“.”连接即可:数据库.数据表(2)在创建数据表之前先进入到某个具体的数据库即可:use 数据...原创 2018-08-10 18:26:27 · 3082 阅读 · 0 评论 -
SQL基本操作——库操作
我这里软件使用的SQLyog,前面文章有安装包 一.创建数据库 不带字符集的创建: CREATE DATABASE mydatabase1; --不指定字符集则是使用安装时定义的默认字符集,可在db.opt里查看 带字符集的创建:CREATE DATABASE mydatabase2 charset gbk;查看数据库创建语句 show crea...原创 2018-08-08 21:48:35 · 313 阅读 · 0 评论 -
SQLyog中文版安装包,注册码
SQLyog是啥?一款很好用的mysql客户端工具 安装包与注册码链接:中文版SQLyog,64位32位都有 密码:p6xk花了我3个C币...且用且珍惜(╥╯^╰╥)听说很好用,等我用熟练了出个使用教程...原创 2018-08-07 17:40:23 · 1568 阅读 · 3 评论 -
手把手教你安装MySQL(附带安装包)
点这里下载,如果下载失败点击下面链接再下载个东西就行了https://www.microsoft.com/zh-cn/download/details.aspx?id=40784然后下载对应位数的Visual Studio 2013下来再次安装显示成功安装 ...原创 2018-08-06 15:37:25 · 508 阅读 · 0 评论 -
Mysql服务端架构
原创 2018-08-06 11:39:16 · 286 阅读 · 0 评论 -
Mysql基本介绍+启动停止+登陆退出
1.命令行方式2.系统服务方式(前提是安装mysql的时候将mysql添加到windows服务中去了)windos+r 输入services.msc 即可看到以下窗口,双击即可启动mysql服务(我这里的mysql的服务名就叫MySql)右键点击停止即可关闭右键还可设置(如设置为开机自启动) 1.登陆如下图,我的主机名为localh...原创 2018-08-06 11:02:28 · 806 阅读 · 0 评论 -
SQL详细介绍
SQL分类原创 2018-08-06 09:47:31 · 298 阅读 · 0 评论 -
什么叫数据库?它分为几类?是按照什么划分的?
什么叫数据库数据库有哪些分类这里我们重点要讲的是关系型数据库原创 2018-07-19 21:11:53 · 10292 阅读 · 1 评论