您的位置:首页 > 数据库 > MySQL

MySQL入门-索引/视图/触发器

2018-02-06 01:18 465 查看
合并查询结果
SELECT NAME FROM sheet1$ UNION  SELECT NAME FROM sheet2$;-- 合并查询结果,去除重复项
SELECT NAME FROM sheet1$ UNION ALL SELECT NAME FROM sheet2$;-- 查询所有结果,不会去除重复项
索引-- 提高查询速度
索引分类
1,普通索引
2,唯一性索引,使用UNIQUE参数设置
3,全文索引FULLTEXT参数设置,全文索引只能创建在CHAR,VARCHAR,TEXT字段类型上。只有MyISAM引擎支持,MySQL默认引擎不支持
4,单列索引
5,多列索引
6,空间索引
一,创建表的时候创建索引
CREATE TABLE 表名(属性名 数据类型[完整性约束条件],
                   ......
                   属性名 数据类型[完整性约束条件]
                   
                   [UNIQUE|FULLTEXT|SPATIAL|INDEX|KEY
                    [别名](属性名 1[(长度)][ASC|DESC])
                    );
二,在已经存在的表上创建索引
CREATE [UNIQUE|FULLTEXT|SPATIAL]INDEX 索引名 ON 表名 (属性名 1[(长度)][ASC|DESC]);
三,用 ALTER TABLE 语句创建索引
ALTER TABLE 表名 ADD 索引名 (属性名 [(长度)][ASC|DESC]);
删除索引
DROP INDEX 索引名 ON 表名;
视图
视图的作用:
1,使操作简便化
2,增加数据的安全性
3,提高表的逻辑独立性
创建视图:
CREATE [ALGORITHM={undefiend|MERGE|TEMPTABLE}]
        VIEW 视图名[(属性清单)]
        AS SELECT 语句
        [WITH[CASCADED|LOCAL]CHECK OPTION];
CREATE VIEW v1 AS SELECT * FROM sheet1$;
CREATE VIEW v2 AS SELECT TYPE,num FROM sheet1$;
CREATE VIEW v3(t,n) AS SELECT TYPE,num FROM sheet1$;-- 创建别名
SELECT * FROM v3;
CREATE VIEW v4 AS SELECT TYPE,plt FROM sheet1$,sheet2$ WHERE sheet1$.`response`=sheet2$.`response`;
SELECT * FROM v4;
查看视图
DESC v3;
SHOW TABLE STATUS LIKE 'v4'
修改视图
CREATE OR REPLACE VIEW;
触发器
触发器(TRIGGER)由事件来触发某个操作,这些事件包括 INSERT 语句/UPDATE 和 DELETE 语句。
创建有多个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
       ON 表名 FOR EACH ROW
       DELIMITER |
       BEGIN
         执行语句
       END
       DELIMITER;
查看触发器
SHOW TRIGGERS
删除触发器
DROP TRIGGER 触发器名;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MySQL
相关文章推荐