• Mysql中的索引、存储


    索引的使用与数据库中表的引擎有一定的关联

    索引的存储的数据类型分为两种:BTREE/HASH

      MYISAM/InnoDB 存储类型只支持BTREE

      MEMORY/HEAP支持两种

    一般情况下,有以下几种常用的索引:

        普通索引: INDEX--------- CREATE table t1 (...... , INDEX 索引名(列名))------没有唯一性的限制

        唯一索引:UNIQUE INDEX 主键为一种特殊的唯一索引。因为主键不能为空,唯一索引是可以为空的--------------CREATE table t2(......., UNIQUE INDEX 索引名(列名))

        单列索引:一个表中可以有多个单列索引------------CREATE table t3(.......,  INDEX SingleIdx 索引名(列名)),上述两种索引皆为单列索引

        组合索引:一个表的多个字段上创建的索引,只有在查找的字段中使用了这些字段的左边字段,才会使用该组合索引(遵循最左前缀组合索引)

              CREATE table t4(.......,  INDEX MultiIdx 索引名(列名))

        全文索引:FULLTEXT INDEX(MyISAM支持)------CREATE table t5(......., FULLTEXT INDEX FullTxtIdx 索引名(列名))

        空间索引:SPATIAL   CREATE table t6(......., SPATIAL INDEX spatIdx 索引名(列名))

    对索引进行增删改查

          使用ALTER TABLE创建索引      ALTER TABLE t1 ADD INDEX  索引名(colname)

        使用CREATE TABLE创建索引  CREATE INDEX index_name ON  tablename(colname)  

        使用ALTER TABLE删除索引  ALTER TABLE t2 DROP 索引名

        使用DROP TABLE删除索引  DROP INDEX index_name ON t3

    存储的使用:

        一、存储过程的创建:        

          CREATE PROCEDURE CalUserSum()
          BEGIN
              SELECT SUM(user_id),COUNT(user_id) FROM fm_user;
          END;

        使用存储: CALL 存储名

        一般情况下,为了区分存储过程与MySQL的结束符,我们可以使用DELIMITER关键字来改变MySQL默认的结束符,存储过程定义完毕之后,我们再使用“DELIMITER ;”将结束符还原

      

        二、存储函数的创建

          

  • 相关阅读:
    AC自动机---病毒侵袭
    线段树或树状数组---Flowers
    AC自动机---Keywords Search
    AC自动机基础知识讲解
    线段树---Atlantis
    状态压缩DP---Hie with the Pie
    状态压缩DP--Mondriaan's Dream
    【PAT-并查集-水题】L2-007-家庭房产
    【PAT-一道看着很难的水题】L2-023. 图着色问题
    【二叉搜索树】PAT-天梯赛- L2-004. 这是二叉搜索树吗?
  • 原文地址:https://www.cnblogs.com/charging-for-ycp/p/7255698.html
Copyright © 2020-2023  润新知