mysql gin索引_mysql-基本命令与索引

基本SQL命令

库管理

创建库(指定字符集):create database 库名 default charset = utf-8;

查看创建库的语句:show create database 库名;

切换库:use 库名;

查看当前所在库:select database();

查看库中已有表:show tables;

删除库:drop database 库名;

表管理

创建表(指定字符集):CREATE TABLES 表名(字段名,数据类型,...)DEFAULT CHARSET = UTF-8;

查看创建表的语句(字符集和存储引擎):show create table 表名;

查看表结构:desc 表名;

删除表:drop table 表名;

表记录管理:

插入:insert into 表名 values(),(),...;

insert into 表名(字段名列表) values(),(),...;

查询:select * from 表名;

select 字段名1,字段名2,...from 表名;

删除:delete from 表名 where 条件;

更新:update 表名 set 字段名=值1,...where 条件;

表字段管理:

添加:alter table 表名 add 字段名 数据类型 first ;

alter table 表名 add 字段名 数据类型 after 字段名;

修改:alter table 表名 drop 字段名;

字段重命名: alter table 表名 change 旧字段名 新字段名 数据类型;

表的重命名: alter table 表名 rename 新表名;

修改默认字符集

cd /etc/mysql/mysql.conf.d/

cp -p mysqld.cnf mysqld.cnf.bak

vi mysqld.cnf

[mysqld]

character_set_server = utf-8

/etc/init.d/mysql restart

SQL查询

排序:order by 字段名 ASC/DESC 升序/降序

范围:limit m,n #放在最后

聚合函数:avg(),sum(),max(),min(),count(字段名)##Null不会被统计

分组:group by

过滤:having #having与group by联合使用,用来过滤由group by语句返回的记录集

#where只能操作表中实际存在的列,having则可以操作聚合函数生成的显示列

去重:distinct

索引

mysql索引的数据结构为B Tree

优点:可以加快数据的检索速度

缺点:需要动态维护,降低了数据的维护速度,索引占用物理空间

索引性能分析:

开启性能分析:set profiling = 1

创建索引字段: create index 索引名 on 表名(字段名)

执行sql命令

查看性能分析结果:show profiling

索引分类

普通索引:index

创建:create index 索引名 on 表名(字段名)

唯一索引:UNI,字段值可以为空,但不允许重复

创建:create unique index 索引名 on 表名(字段名)

删除:只能一个一个删

show index from 表名;

drop index 索引名 on 表名;

主键索引:PRI,字段值不能为空且不允许重复

一个表中只能有一个字段为主键字段

创建:alter table 表名 add primary key(字段名)

删除:先删除自增长属性 alter table 表名 modify 字段名 数据类型;

删除主键 alter table 表名 drop primary key;

已有表添加主键索引:alter table 表名 motify 字段名 数据类型 auto_increment;

外键索引:让当前表字段值在另外一个表字段范围内去选择

创建:foreigin key(参考字段名)

reference 被参考表名(被参考字段名)

on delete 级联动作

on update 级联动作

alter table 表名 add foregin key(...)...

级联动作:cascade 同步更新

restrict 默认

set null

no action

删除:alter table 表名 drop foreign key 外键名;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值