SQL 索引与视图

索引

1.可以提升查询速度,会影响where条件查询和order by 排序

2.索引针对字段,需要添加到字段上

3.在数据量大的情况下效果明显

主键索引

1.一个表可以没有主键,但最多只能有一个主键,不能包含NULL

2.添加主键的时候会自动创建主键索引,主键索引是一种唯一性索引

3.根据主键进行where条件查询,效率高

创建方式

1.创建表的时候直接添加主键索引

create table o_retailers_trade_user_3
(
user_id int (9) primary key,
item_id int (9),
behavior_type int (1),
user_geohash varchar (14),
item_category int (5),
time varchar (13)
);

2.修改表结构 添加主键索引

alter table o_retailers_trade_user_3 add primary key (item_id);

唯一索引

1.索引列的所有值都只能出现一次,必须唯一

2.唯一索引可以保证数据记录的唯一性

创建方式

1.创建表的时候直接添加唯一索引

create table o_retailers_trade_user_2
(
user_id int (9),
item_id int (9),
behavior_type int (1),
user_geohash varchar (14),
item_category int (5),
time varchar (13),
unique user_id_index(user_id)
);

2.在已有的表上创建索引

create unique index item_id_index on o_retailers_trade_user_2(item_id);

3.修改表结构添加索引

alter table o_retailers_trade_user_2 add unique item_id_index(item_id);

普通索引

1.普通索引的唯一目的是加快对数据的访问速度

创建方式

1.在已有的表上创建索引

create index item_id_index on o_retailers_trade_user(item_id);

2.修改表结构添加索引

alter table o_retailers_trade_user add index item_id_index(item_id);

删除索引

alter table o_retailers_trade_user drop index item_id_index;

视图

1.一种虚拟表

2.视图建立在已有表的基础上,视图赖以建立的表称为基表

3.向视图提供数据内容的语句为select语句,可以将视图理解为存储起来的select语句

4.视图是向用户提供基表数据的另一种表现形式

5.视图用作控制权限

6.简化复杂的多表查询

视图与表的区别

1.视图是建立在表基础上的,表存储数据库中的数据,而视图只是做一个数据的展示

2.通过视图不能改变表中数据

3.删除视图表不受影响,删除表,视图不再起作用

创建视图

create view trade_user_view as 
select * from o_retailers_trade_user where `time` >='2019-12-18 00';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值