07 2020 档案
摘要:1 #变量 2 /* 3 系统变量: 4 全局变量 5 会话变量 6 7 自定义变量: 8 用户变量 9 局部变量 10 11 */ 12 #一、系统变量 13 /* 14 说明:变量由系统定义,不是用户定义,属于服务器层面 15 注意:全局变量需要添加global关键字,会话变量需要添加sessi
阅读全文
摘要:1 #视图 2 /* 3 含义:虚拟表,和普通表一样使用 4 mysql5.1版本出现的新特性,是通过表动态生成的数据 5 6 比如:舞蹈班和普通班级的对比 7 创建语法的关键字 是否实际占用物理空间 使用 8 9 视图 create view 只是保存了sql逻辑 增删改查,只是一般不能增删改 1
阅读全文
摘要:1 #标识列 2 /* 3 又称为自增长列 4 含义:可以不用手动的插入值,系统提供默认的序列值 5 6 7 特点: 8 1、标识列必须和主键搭配吗?不一定,但要求是一个key 9 2、一个表可以有几个标识列?至多一个! 10 3、标识列的类型只能是数值型 11 4、标识列可以通过 SET auto
阅读全文
摘要:1 #常见约束 2 3 /* 4 5 6 含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性 7 8 9 分类:六大约束 10 NOT NULL:非空,用于保证该字段的值不能为空 11 比如姓名、学号等 12 DEFAULT:默认,用于保证该字段有默认值 13 比如性别 14 PR
阅读全文
摘要:1 #常见的数据类型 2 /* 3 数值型: 4 整型 5 小数: 6 定点数 7 浮点数 8 字符型: 9 较短的文本:char、varchar 10 较长的文本:text、blob(较长的二进制数据) 11 12 日期型: 13 14 15 16 */ 17 18 #一、整型 19 /* 20
阅读全文
摘要:1 #DDL 2 /* 3 数据定义语言 4 5 库和表的管理 6 7 一、库的管理 8 创建、修改、删除 9 二、表的管理 10 创建、修改、删除 11 12 创建:create 13 修改:alter 14 删除:drop 15 */ 16 17 #一、库的管理 18 #1、库的创建 19 /*
阅读全文
摘要:#DML语言 /* 数据操作语言: 插入:insert 修改:update 删除:delete */ #一、插入语句 #方式一:经典的插入 /* 语法: insert into 表名(列名,...) values(值1,...); */ SELECT * FROM beauty; #1.插入的值的类
阅读全文
摘要:1 #进阶9:联合查询 2 /* 3 UNION 联合 合并:将多条查询语句的结果合并成一个结果 4 5 语法: 6 查询语句1 7 union 8 查询语句2 9 。。。 10 11 应用场景: 12 要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时 13 14 特点: 1
阅读全文
摘要:1 一、查询每个专业的学生人数 2 SELECT COUNT(*) 3 FROM student 4 GROUP BY majorid; 5 6 二、查询参加考试的学生中,每个学生的平均分、最高分 7 SELECT avg(score),MAX(score),studentno 8 FROM res
阅读全文
摘要:1 #1.查询工资最低的员工信息:last name, salary 2 SELECT 3 last_name, 4 salary 5 FROM 6 employees 7 WHERE 8 salary = ( 9 SELECT 10 MIN(salary) 11 FROM 12 employees
阅读全文
摘要:1 #进阶7:子查询 2 /* 3 含义: 4 出现在其他语句中的select语句,成为子查询或内查询、 5 外部的查询语句,成为主查询或外查询 6 7 分类: 8 按子查询出现的位置:、 9 select后面: 10 仅仅支持标量子查询 11 FROM后面:、 12 支持表子查询 13 where
阅读全文
摘要:1 #全外 2 use girls; 3 SELECT b.*,a.* 4 FROM beauty b 5 FULL OUTER JOIN boys a 6 on b.boyfrien_id=a.id; 7 8 #交叉连接99标准笛卡尔乘积 9 SELECT b.*,ob.* 10 FROM bea
阅读全文
摘要:1 #三、自连接 2 #查询员工的名字、上级的名字 3 SELECT 4 e.last_name, 5 m.last_name 6 FROM 7 employees e 8 JOIN employees m ON e.manager_id = m.employee_id 9 WHERE 10 e.l
阅读全文
摘要:1 #二、sql99语法 2 /* 3 语法 4 SELECT 查询列表 5 FROM 表1 别名 【连接类型】 6 JOIN 表2 别名 7 on 连接条件 8 【where 筛选条件】 9 【group BY 分组】 10 【having 筛选条件】 11 【order by 排序列表】 12
阅读全文
摘要:#非等值连接 #案例1:查询员工的工资和工资级别 SELECT salary, grade_level FROM employees e, job_grades g WHERE salary BETWEEN g.lowest_sal AND g.highest_sal AND g.grade_lev
阅读全文
摘要:1 #进阶6连接查询 2 /* 3 含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询 4 笛卡尔乘积现象:表1 有m行,表2 有n行,结果=m*n行 5 发生原因:没有有效的连接条件 6 如何避免:添加有效的连接条件 7 8 分类: 按年代分类:sql92标准 sql99标准【推荐】
阅读全文
摘要:1 #进阶5:分组查询 2 /* 3 语法: SELECT 分组函数,列(要求出现在group by的后面) 4 from 表 5 GROUP BY 分组的列表 6 [order by子句] 7 注意: 查询列表必须特殊,要求是分组函数和group by后出现的字段 8 特点: 9 1、分组查询中断
阅读全文
摘要:#二、分组函数 /* 功能:用作统计使用,又称为聚合函数或统计函数或组函数 分类: sum求和、avg平均值、max最大值、min最小值、count计算个数 特点: 1.sum、avg一般用于处理数值型 max、min、count可以处理任何类型 2.以上分组函数都忽略null值 3.可以和dist
阅读全文
摘要:#进阶4:常见函数 /* 概念:类似于java中的方法,将一组逻辑语句封装子方法体中,对外暴露名 好处:1.隐藏了实现细节 2.提高代码的重用性 调用: selcet 函数名(实参列表) 【from 表】; 特点: ①叫什么(函数名) ②干什么(函数功能) 分类: 1.单行函数 如 concat 、
阅读全文
摘要:#进阶3:排序查询 /* 引入: SELECT * FROM employees; 语法: SELECT 查询列表 from 表 【where 筛选条件】 ORDER BY 排序列表【asc|desc】 特点: 1.asc代表的是升序,desc代表的是降序 如果不屑,默认是降序 2.ORDER BY
阅读全文
摘要:#安全等于:<=> #案例:查询没有奖金的员工名和奖金率 SELECT last_name, commission_pct FROM employees WHERE commission_pct <=> NULL; #案例2:查询工资为12000的员工信息 SELECT last_name, sal
阅读全文
摘要:#进阶2:条件查询 /* 语法: SELECT 查询列表 FROM 表名 WHERE 筛选条件; 分类: 一、按条件表达式筛选 条件运算符:> < = <> >= <= 二、按逻辑表达式筛选 逻辑运算符: 作用:用于连接条件表达式 && || ! and or NOT 三、模糊查询 LIKE bew
阅读全文
摘要:SELECT last_name FROM employees; SELECT last_name, salary, email FROM employees; SELECT * FROM employees; #查询常量值 SELECT 100; SELECT 'john'; #查询表达式 SEL
阅读全文