再次认识mysql(四)

原创 2016年08月31日 22:53:57

视图  view 虚拟表(sql的查询结果)

创建  create view vuser as  select cat_id,avg(shop_price) as pj  from goods group by cat_id;

删除  

视图其实是物理表的投影   

作用:权限控制  通过视图开放一列或者几列  

            简化复杂查询

如果视图的每一行与物理表是一一对应的则可以互相更新

视图的一行是由物理表进行计算得到的结果 则视图不能够更新

视图的算法 

merge 存储视图语句  合并

temptable     视图本身比较复杂  执行视图创建语句 结果集形成内存中的临时表  然后查临时表      

create algorithm =merge view goods.v1 as select goods_id,avg(shop_price) as pj,avg(market_price) as mpj from goods;

            algorithm=temptable

 alter view 

 drop view  v1;

 show create view v1;


查看表  desc  goods;

删除表  drop  table  goods;

查看建表过程  show create table goods;

查看表信息   show table  status ;

查看具体表的详细信息  show table status where name='goods';

修改表名称 rename table old to new;

初始化表数据  truncate table;    相当于drop和create 

 

存储引擎  数据库对同样的数据 有着不同的存储方式和管理方式

 默认引擎:InnoDB

Myisam  批量插入速度 高   

InnoDB                            低      支持事务安全    日志系统健全 不易丢失  

 

字符集  UTF8 



查看支持的编码  show character set;

查看支持的校验规则 show collation;

编码校验规则:用于排序和比较使用   _ci不区分大小写的比对 

字段指定编码格式未指定校对规则,会采用该编码默认校对规则

字符集mysql环境  show variables like "%character%";

设置mysql字符集环境 client connection database filesystem  results  server  system

set character_set_client=utf-8; 设置为utf-8


索引 index

作用:数据的目录,能快速定位行数据的位置。

代价:提高了查询速度,降低了增删改的速度(索引也会发生变化)

一般在查询频率高的列上加,而且列重复度低的列上 效果更好

普通索引 key

唯一索引 unique key  便于查询和约束数据  email char(20)   unique key email(email(10))  针对email列的前10个字符  建立索引 email

主键索引 primary key    id int     primary key(id)  

全文索引  fulltext  中文环境下无效果  (分词+索引   sphinx)

多列索引  把多列的值看成一个整体   

create table t1(xing char(2),ming(char(10),key xm(xing,ming));

explain select * from t1 where xing=‘你’ and ming=‘真是’ \G;          查看如何利用索引来处理这条语句执行情况    \G将字段打印到单独的行      使用到了索引

explain select * from t1 where xing=‘你’     使用到了索引

explain select * from t1 where ming=‘真是’  没用使用索引            左前缀 从左往右    由左可以确定   由右不可以确定

冗余索引 某一个列上可能有多个索引   

create table  t1 (xing char(2),ming char(10),key xm(xing,ming),key m(ming));

show index from t1; 查看索引

alter table t1 drop index ming   删除索引

drop index ming on t1 删除索引

alter table t1 add index xm(xing,ming) 增加索引

alter table t1 add unique m(ming);增加索引





版权声明:本文为博主原创文章,转载请注明出处,谢谢!

相关文章推荐

再次认识mysql(二)

group 分组与统计函数 max()求最大  min()求最小   sum()求总和  avg()求平均   count()求行数 select sum(goods_num*shop_price...

再次认识Struts2(四)

ognl object-graph navigation  功能强大的表达式语言 struts2默认表达式语言 valueStack 值栈 作用:将action中的数据携带到jsp页面上进行展示

zhphp framework (十二) 数据链接层,首先pdo,其次mysqli,再次mysql接口

<?php /** * Created by JetBrains PhpStorm. * User: 张华 * Date: 14-3-8 * Time: 下午12:21 * QQ: 7465...

mysql 的卸载后再次安装,以前的mysql服务还在的问题原因和解决办法

我是mysql的初学者,在第一次安装mysql时因为配置不对的问题,我把mysql卸载后再次安装后,安装到要输入服务器名字时,使用默认名字会出错,我就随便改了个名字就可以继续安装,安装完成后。我打开服...

再次认识Hibernate(三)

Hibernate

再次认识java的序列化

首先是我们为什么要序列化? 我们可以来想想游戏的场景,一个游戏有很多关卡,并不是一次性能够打完的。如果我们打完一关,这时候需要退出游戏休息了。当我们再次进入游戏之后发现这个游戏竟然需要重新打起,我们接...

Java反射-再次认识

最近的学习发现在很多方面,基础知识掌握的还很不牢固,所以对于架构、知识点等属于那种问啥啥知道,做啥啥不出来的那种类型。前些日子,老师一直在抓基础,做什么都要从最简单的demo开始,只有懂了原理之后再去...

再次认识Hibernate(二)

Hibernate的持久化类状态 持久化类:实体类  与数据库表建立了映射  Hibernate中的持久化类有三种状态 transient 瞬时态(临时态) 持久化对象没有唯一标识oid    没有纳...

再次认识Struts2(三)

Struts2国际化 同一款软件 可以为不同的用户 提供不同语言界面 需要一个语言资源包 (里面有properties文件,每个properties文件针对每一个语言)通过java程序根据来访者语言,...

AWK再次认识--内置的参数,以及编写脚本

原本这是篇给公司内同事写的培训文章,对于初学awk的人还蛮有帮助,贴到这里与大家共享一下。 〇、前言     意见反馈,请mailto:datouwang@gmail.com。   一...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)