• MySQL中的数据类型选择、使用合成索引


    1. char 和 varchar     保存少量字符串

    char 固定长度的字符类型,varchar 可变长度的字符类型,在MyISAM和MEMORY中推荐char  , 在InnoDB中推荐varchar

    2. text 和 blob     保存较大的文本

    text 只能保存字符数据,而BLOB能用来保存二进制数据(图片等)

    optimize table t;

    在InnoDB 引擎中,optimize语句被自动转换为recreate+analyze语句。

     可以使用合成索引(Synthetic)来提高大文本字段(BLOB或TEXT)的查询性能,

    合成索引就是根据大文本字段的内容建立一个散列值,并把这个值存储在单独的数据列中,接下来就可以通过检索散列值快速找到数据,值得注意的是,这种技术只能用于精确匹配的的查询。数值型散列值可以高效率的存储。

    CREATE TABLE t9 (id VARCHAR(100),context BLOB,hash_value VARCHAR(40))
    CREATE INDEX idx_hash_value ON t9 (hash_value)
    INSERT INTO t9 VALUES(1,REPEAT('beijing',2),MD5(context))
    INSERT INTO t9 VALUES(2,REPEAT('beijing',2),MD5(context))
    INSERT INTO t9 VALUES(3,REPEAT('beijing 2008',2),MD5(context))
    SELECT * FROM t9 WHERE hash_value=MD5(REPEAT('beijing 2008',2))

  • 相关阅读:
    关于点击率模型,你知道这三点就够了
    【AI】Computing Machinery and Intelligence
    MATLAB 的函数句柄
    MATLAB 的unique函数——数组矩阵的唯一值
    MATLAB 的数据导入与导出
    MATLAB 的函数
    MATLAB 向量
    MATLAB 的break语句和continue语句
    MATLAB 的循环语句
    MATLAB 的条件分支语句
  • 原文地址:https://www.cnblogs.com/kate7/p/13306157.html
Copyright © 2020-2023  润新知