mysql复习
请叫我卫卫
最怕你一生碌碌无为,还安慰自己平凡可贵
展开
-
mysql复习第二十天:锁
1、基础介绍:计算机协调多个进程或线程并发访问某一资源的机制,锁可以对有限的资源进程保护,解决隔离和并发的矛盾;2、分类:对数据操作类型:读锁、写锁;对数据操作的颗粒度分:行锁、表锁;读锁(共享锁):针对同一数据,多个读操作可以同时进行而不会相互影响;写锁(排它锁):当前写操作没有完成前,他会阻断其他写锁和读锁;行锁:偏向MySIAM引擎,开销小,...原创 2020-04-20 15:24:16 · 152 阅读 · 0 评论 -
mysql复习第十九天:索引(一)
1、基础介绍:排好序的快速查找数据结构2、索引分类:1、单值索引:即一个索引包含单个列;2、唯一索引:索引列的值必须唯一,但允许有空值;3、复合索引:即一个索引包含多个列;3、语法:创建语法:CREATE [UNIQUE] INDEX indexName ON tableName(columnname(length));ALTER tableNameADD [UNI...原创 2020-02-23 00:03:37 · 196 阅读 · 0 评论 -
mysql复习第十八天:存储过程
1、基础介绍:一组预先编译好的sql语句集合;批处理语句1.1、优点1、提高代码的重用性;2、简化操作;3、减少了编译次数并且减少了数据库服务器的连接次数,提高了效率;2、语法1、创建语法create procedure 存储过程名字(参数列表){begin 存储过程体(一组合法的sql语句)end}2.1、参数1、参数列表包含3部分;参数模式,参数名,...原创 2019-11-16 13:21:05 · 124 阅读 · 0 评论 -
mysql复习第十七天:视图
1、基础介绍含义:虚拟表,和普通标一样使用mysql5.1版本出现的新特性,是通过表动态生成的数据只保存了sql逻辑,没有保存查询结果2、视图的操作2.1、创建视图create view 视图名 as 查询语句;create view v1 asselect s_name,s_sex from student;2.2、使用视图select 列名 from 视图名 w...原创 2019-11-12 12:56:48 · 127 阅读 · 0 评论 -
mysql复习第十六天:事务
1、什么是事务一个或者多个sql语句组成一个执行单元,这个执行单元要么全部执行要么全部不执行;举个例子a转给b50元从a减去50,然后b增加50;在事务的支持下有2种结果1、操作成功:a减少50,b增加50;2、操作失败:a,b2个账号没有变化;如果没有事务的支持,可能出现错:a账户减少了50,此时系统挂了,导致b账户没有加上50,而a账户凭空少了50;2、事务的特点...原创 2019-10-24 10:13:08 · 167 阅读 · 0 评论 -
mysql复习第十五天:标识列
1、标识列(自增长列)1、一个表只能有一个表示列;2、表示列只能是数值型;3、通过设置set auto_increment_increment来设置增长值(步长),可以通过插入来设置初始值;create table tab_identity( id int primary key auto_increment, name varchar(10));insert into t...原创 2019-10-18 10:33:59 · 113 阅读 · 0 评论 -
mysql复习第十四天:数据类型
1、常见约束作用:表征表中的数据的准确性和可靠性1.not null:非空;2.default:默认值;3.primary key:主键,唯一性,并且非空;4.unique:唯一,可以为空;5.check:检查约束(mysql不支持);6.foreign kye:外键约束,保证该字段的值必须来自主表的关联列的值;create table test(id int primary...原创 2019-10-16 14:02:27 · 76 阅读 · 0 评论 -
mysql复习第十三天:数据类型
1、数值型1.1、整型tinyint[一个字节](有符号:-128127,无符号:0255),smallint[2个字节]:(有符号:-32768~32767,无符号:\0~65535),mediumint[3个字节],int[4个字节],integer[4个字节],bigint[8个字节];特点:1、设置无符号的关键字:unsigned;2、插入数据超过临界值,会报out ...原创 2019-10-14 11:07:55 · 115 阅读 · 0 评论 -
mysql复习第十二天:表和库的操作
1、数据库的创建和删除创建:create database 库名;create database dt_test;删除drop database 库名;drop database dt_test;2、操作表2.1、创建表create table if not exists 表名(列名 数据类型 约束条件,列名 数据类型 约束条件,…);cre...原创 2019-10-12 10:06:41 · 91 阅读 · 0 评论 -
mysql复习第十一天:修改和删除
1、修改update 表名 set 列=新值,列=新值,… where 条件;update class set classname='D班' where classid = 3;2、删除2.1、方式一:delete from 表名 where 条件;没有where的情况下删除表中所有数据;delete from class where classid = 3;2.2...原创 2019-10-11 14:29:15 · 91 阅读 · 0 评论 -
mysql复习第十天:插入语句
1、插入语句1、插入的值的类型要与列的类型一致或兼容;2、不可以为null的列必须插入值;3、列数和值得个数必须一致;4、可以省略列名,默认所有列,而且列的数据和表中列的顺序一致2、方式一insert into 表(列名,…) values(值1,…);INSERT INTO class(classname) VALUES('E班');3、方式二insert in...原创 2019-10-10 09:47:19 · 210 阅读 · 0 评论 -
mysql复习第二天:单行函数
1、常用字符函数查看字节编码SHOW VARIABLES LIKE '%char%';获取字符串的自己长度SELECT LENGTH('我是卫卫) AS a,LENGTH('111') AS b;UPPER:将字符串转成大写,LOWER:将字符串转成小写SELECT UPPER('aaa') AS a,LOWER('AAA') AS b;substr 截取从...原创 2019-09-27 20:53:16 · 121 阅读 · 0 评论 -
mysql复习第三天:单行函数
1 、常用数学函数round 四写五入,小数点保留指定位数SELECT ROUND(1.65,2) AS a;ceil 向上取整,返回>=该参数的最小整数SELECT CEIL(1.002) AS a;floor 向下取整,返回<=该参数的最大整数SELECT FLOOR(-9.99) AS a;truncate 截断SELECT TRUNC...原创 2019-09-27 21:25:09 · 112 阅读 · 0 评论 -
mysql复习第四天:单行函数
1、常用流程控制函数if函数:if esle的效果SELECT sname,IF(score>60,'及格了','没有及格') AS a FROM student;case 函数使用一:case 要判断的字段或者表达式when 常量1 then 要显示的值或者语句;when 常量2 then 要显示的值或者语句;…else 要显示的的值n或者语句nendS...原创 2019-09-28 10:06:16 · 116 阅读 · 0 评论 -
mysql复习第四天:分组函数
1、分组函数主要作用:统计使用;sum 求和,avg 平均值,min 最小值,max 最大值,count 计算个数;sum,avg一般用于处理数值型;以上函数忽略null值;SELECT SUM(score) AS '总和', AVG(score) AS '平均值', MIN(score) AS '最小值', MAX(score) AS '最大值', COU...原创 2019-09-28 11:04:57 · 79 阅读 · 0 评论 -
mysql复习第五天:分组筛选
1、分组查询 group by数据表:select 列名 from 表 group by 要分组的列名SELECT MAX(score),s_sex,s_name FROM Student GROUP BY s_sex;select 分组函数,列(要求出现在group by的后面) from 表 [where 刷选条件] group by 分组列表 [order by 字...原创 2019-09-29 10:27:01 · 268 阅读 · 0 评论 -
mysql复习第六天:连接查询
数据表student:class:score_leveltype1、笛卡尔乘积现象表1有m行,表2有n行,结果m*n行SELECT * FROM student s,class c;2、 内连接等值连接SELECT s.s_name,c.classname FROM student s,class c WHERE s.class_id = c.classi...原创 2019-09-30 11:06:29 · 94 阅读 · 0 评论 -
mysql复习第七天:连接查询2
1、sql语法select 查询列表from 表1 别名 [连接类型]join 表2 别名on 连接条件[where 筛选条件] [group by 分组] [having 筛选条件] [order by 排序列表]2、分类内连接:inner外连接:左外:left [outer]右外:right [outer]全外:full [outer]交叉连接:cross2....原创 2019-10-02 11:16:18 · 192 阅读 · 0 评论 -
mysql复习第八天:子查询
1、子查询标量子查询(单行子查询)列子查询(多行子查询)where后面分数大于张三的SELECT s_name,scoreFROM studentWHERE score > (SELECT s.score FROM student s WHERE s.s_name = '张...原创 2019-10-08 14:45:32 · 89 阅读 · 0 评论 -
mysql复习第九天:分页查询和联合查询
1、分页查询1.1、语法:select 查询列表 from 表 [join type join 表 on 连接条件] [where 查询条件] [group by 分组条件][having 筛选条件] [order by 排序条件]limit [offset(起始索引),]size(要显示的条目个数)获取前5条记录SELECT * FROM student LIMIT 0...原创 2019-10-09 09:54:37 · 107 阅读 · 0 评论 -
mysql复习第一天
1、_符号匹配任意单个字符模版数据:查询first_name第二个字符为t的数据select first_name from table where first_name like '_t%';2、escape关键字指定某个符号为转义符查询first_name第二个字符为_的数据select first_name from table where first_name ...原创 2019-08-21 22:16:45 · 74 阅读 · 0 评论