首页 > 数据库 >mysql索引

mysql索引

时间:2023-09-06 10:26:31浏览次数:39  
标签:name age 索引 User mysql position id

1 先建表,插入数据,建索引,脚本如下:

--建表
create  table User(
                      id bigint auto_increment primary key,
                      name nvarchar(100),
                      age int,
                      position nvarchar(100)
);
--插入数据
INSERT INTO User (name, age, position)
SELECT
    CONCAT('User', FLOOR(RAND() * 100000000) + 1) AS name,
    FLOOR(RAND() * 100) + 1 AS age,
    CONCAT('Position', FLOOR(RAND() * 100000000) + 1) AS position
FROM
    INFORMATION_SCHEMA.COLUMNS as a
        CROSS JOIN
    INFORMATION_SCHEMA.COLUMNS as b
LIMIT 1000;
--建索引
create  index idx_nameagepos on User(name,age,position);
#具体查询
EXPLAIN select  id,name,age,position from User where name = 'User10052562' and age='38';
EXPLAIN select  id,name,age,position from User where  age='38' and position='Position57818398';
EXPLAIN select  id,name,age,position from User where  age='38';

2 相关分析,总是只看理论,记东西,时间真的会带走一切。

标签:name,age,索引,User,mysql,position,id
From: https://www.cnblogs.com/Insist-Y/p/17681560.html

相关文章

  • 优化mysql大数据量查询:范围条件与限制结果集的比较
    引言:在处理大数据量的MySQL查询时,优化查询性能是至关重要的。当数据量达到上亿级别时,选择合适的查询条件和方法可以显著影响查询效率和响应时间。本篇博客将重点探讨范围条件查询和限制结果集的两种常见查询方式,并比较它们在大数据场景下的性能差异。范围条件查询:范围条件查询是......
  • [转]如何在 MySQL / MariaDB 中导入导出数据,导入导出数据库文件、Excel、CSV
    原文地址:如何在MySQL/MariaDB中导入导出数据,导入导出数据库文件、Excel、CSV-掘金在日常的数据库维护工作中,经常需要对数据库进行导入导出操作,备份、分析、迁移数据都需要用到导入导出功能,在本教程中将详细讲解所有常见的MySQL和MariaDB中导入导出数据的方法(注意:MyS......
  • MySQL的Other Vendor Type
    mysql8参考文档OtherVendorTypeMySQLType占用字节数BOOLTINYINT1字节BOOLEANTINYINT1字节CHARACTERVARYING(M)VARCHAR(M)0~65535字节FIXEDDECIMAL-FLOAT4FLOAT4字节FLOAT8DOUBLE8字节INT1TINYINT1字节INT2SMALLINT2字节INT3MEDI......
  • MySQL数据库
    上篇文章写了如何用部署Docker、Docker安装MySQL、MySQL语句创建数据库和数据库表,还有一些对数据库的基本命令,本篇内容主要写MySQL语句对数据库中的表的记录(数据)命令添加表中新字段ALTERTABLE表名ADD列名数据类型(范围);修改表中新字段ALTERTABLEtbl_nameCHANGE旧列名新......
  • 使用 MYSQL 对列中特定范围的数字求和
    使用MySQL对列中特定范围的数字求和,可以使用SQL的SUM()函数结合WHERE子句来实现。以下是一个示例:SELECTSUM(column_name)ASsum_resultFROMtable_nameWHEREcolumn_name>=start_valueANDcolumn_name<=end_value;在上述代码中,将column_name替换为要计算求和的......
  • MySQL常见命令及约束超详细(二)续
    查看数据表有四种方法:① SHOWCOLUMNSFROMtbl_name[FROMdb_name];②SHOWCOLUMNSFROM表名;③DESC表名;④DESCRIBE 表名;建议用第三种方便记忆添加表中新字段ALTERTABLE表名add字段名数据类型(数据范围);修改表中新字段ALTERTABLEtbl_nameCHANGE旧列名新列名新......
  • MySQL数据高阶处理技巧:掌握先排序后分组的智慧
    在MySQL数据库的数据探索旅程中,排序和分组是不可或缺的工具。然而,当你面对大量数据、重复值等情况时,常规的处理方法可能显得不够灵活。本文将为你揭示一个精妙的技巧:如何在MySQL中先排序,后分组,从而获取每个类型的最新数据,助你轻松驾驭复杂的数据处理任务。问题背景:先排序,后分组拥有......
  • MySQL分页查询详解:优化大数据集的LIMIT和OFFSET
    最近在工作中,我们遇到了一个需求,甲方要求直接从数据库导出一个业务模块中所有使用中的工单信息。为了实现这一目标,我编写了一条SQL查询语句,并请求DBA协助导出数据。尽管工单数量并不多,只有3000多条,但每个工单都包含了大量的信息。DBA进行了多次导出操作,不幸的是,每次尝试导出都导致......
  • explain | 索引优化
    前言对于互联网公司来说,随着用户量和数据量的不断增加,慢查询是无法避免的问题。一般情况下如果出现慢查询,意味着接口响应慢、接口超时等问题。如果是高并发的场景,可能会出现数据库连接被占满的情况,直接导致服务不可用。慢查询的确会导致很多问题,我们要如何优化慢查询呢?主要解决......
  • 重建索引
    alert日志报错信息:[oracle@hd04trace]$catalert_db12c.log|grep"corrupt"-A2-B2|moreHexdumpof(file11,block704337)intracefile/app/oracle/diag/rdbms/orcl/db12c/trace/db12c_p006_20208.trcReadingdatafile'/app/oracle/oradata/orcl/d......