SQL视图
视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来*定义视图的查询所引用的表,并且在引用视图时动态生成。
--保存视图 create view 视图名字 as SQL查询语句 --保存查询的结果形成一张虚拟表 --查询视图 select * from 视图名字 --视图只允许查看,不允许执行DML语句 --删除视图 drop view 视图名字
判断
--在sql语句中有两种判断形势 if()函数 case-when 语句 --if()函数 if(条件,真执行sql语句,假执行sql语句) as 别名 --case-when 语句 case when 条件语句 --对列名进行判断 then 真执行sql语句 else 假执行sql语句 end --注意结尾一定有end --与sum()函数配合使用 统计条件人数
存储过程
为了完成某个特定的功能而执行的一组(一条SQL语句或多条SQL语句)SQL代码 ,然后把他们保存下来。 所以取名为存储过程
--创建存储过程 delimiter // --修改结束标识符 --修改mysql命令行的语句结束标识符为了执行存储过程创建语句 create procedure 存储过程名称([参数列表]) begin sql代码; --每一集sql语句都要以;结束 --在dos系统中需要修改结束符 end // delimiter ; --修改后使用完成需要修改回; --调用存储过程 call 存储过程名称(参数列表); --删除存储过程 drop procedure 存储过程名称;
数据中的变量
变量的分类
-
局部变量
begin~end之间的变量,只在这之间有效
-
用户变量
用户自定义的变量 @变量名 对当前客户端(当前页面)有效
-
会话变量
客户端连接到Mysql服务器到关闭连接的过程,被称为一个会话
-
全局变量
super才能设置 作用于整个服务器生命周期
--声明局部变量 create procedure 存储过程名称([参数列表]) begin declare 变量名 数据类型 [defalut 默认值]; --char(3) / 三个字符 --now() / 获得当天时间 set 变量名 : = 变量值; --给变量赋值 --CONCAT() / 字符串拼接 end --设置用户变量 set @用户变量 := ‘用户变量‘;.4 --select into 语句 --把选定的列的值存放至变量中,只有单一的行可以被取回 select 列名1,列名2,列名3,... into 变量1,变量2,变量3,... from 表名 where 条件
变量的选择判断语句
if 条件语句 then 真执行sql语句; else 假执行sql语句; end if;
其他
-
select * from dual / dual : 虚拟表
-
数据库中没有 ==
- not in / 不包含