首页 > 数据库 >关于MySQL的一些优化(单表访问)

关于MySQL的一些优化(单表访问)

时间:2023-05-30 21:47:15浏览次数:70  
标签:ci SET utf8mb4 ai CHARACTER 访问 单表 MySQL NULL

以此表为例

CREATE TABLE `single_table`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `key1` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `key2` int NULL DEFAULT NULL,
  `key3` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `key_part1` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `key_part2` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `key_part3` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `common_field` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `idx_key1`(`key1`) USING BTREE,
  UNIQUE INDEX `idx_key2`(`key2`) USING BTREE,
  INDEX `idx_key3`(`key3`) USING BTREE,
  INDEX `idx_p1_p2_p3`(`key_part1`, `key_part2`, `key_part3`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

const

select * from single_table where id = 143

上面这条SQL语句会直接利用主键值在聚簇索引中定位对应的用户记录

标签:ci,SET,utf8mb4,ai,CHARACTER,访问,单表,MySQL,NULL
From: https://www.cnblogs.com/wry979/p/17444537.html

相关文章

  • SQLite与MySQL与PostgreSQL:关系数据库的比较
    概述和功能SQLite是一个基于文件的嵌入式RDBMS,不需要任何安装或设置。反过来,这意味着应用程序不在需要启动,停止或配置的单独服务器进程下运行。这种无服务器架构使数据库能够跨平台兼容。完整的SQL数据库包含在单个磁盘文件中,所有读取和写入都直接在此磁盘文件上进行。由于数据直接......
  • MySQL数据库,货币格式化
    MySQL数据库,货币格式化如何将数字表示为美元格式例$10,000.00查询语句SELECTCONCAT('$',FORMAT(price*1000,2,','))ASPriceFROMitem;千位分隔FORMAT(number,decimal,places),即FORMAT(数字,保留位数,分隔符)添加美元符号$CONCAT(str1,str2,...),str1、s......
  • MySQL数据库,字符串字段拆分
    MySQL数据库,字符串字段拆分英文姓名存储在一个字段如何拆分出firstname和lastname查询语句SELECTREPLACE(name,CONCAT('',SUBSTRING_INDEX(name,'',-1)),'')ASfirstname,SUBSTRING_INDEX(name,'',-1)ASlastnameFROMpeople;SUBSTRING_INDE......
  • drf-基于角色的访问控制
    目录一权限控制ACLRBAC二控制权限2.1django中,如何做权限控制的2.2我们开发中做权限控制2.3基于django的auth+admin+第三方美化快速开发1.安装2.配置文件配置,注册app3.菜单栏定制4.自定义菜单和页面5.自定义按钮6.切换图标7.首页显示的隐藏2.4djagno-vue-admin一权......
  • MySQL学习进阶篇Day5
    2.6.4索引失效情况2.6.4.1索引列运算不要在索引列上进行运算操作,索引将失效。 在tb_user表中,除了前面介绍的联合索引之外,还有一个索引,是phone字段的单列索引。 A.当根据phone字段进行等值匹配查询时,索引生效。explainselect*fromtb_userwherephone='1779......
  • mysql8和pgsql10你选哪个?
    手里有个云服务器1核1G,ubuntu20.04,经常用来测试一些开源应用。刚好有个应用需要数据库支持,或者mysql8,或者pgsql10。显然mysql用起来更得心应手,可是安装不上mysql8,显然内存不够,无奈只好试下pgsql,安装竟然非常顺畅。安装了pgsql12,目前占用内存也就130M左右起了一个应用,统计一下......
  • mysql中update会锁表吗
    MySQL中的update操作会不会锁表是一个值得关注的问题,因为这会影响到并发性能和系统的响应速度。本文将从两个方面探讨这个问题:一是有没有索引的情况下,二是MySQL开启了自动提交事务和手动提交事务的情况下。首先,在没有索引的情况下,MySQL的update操作会锁整个表。这是因为在......
  • MySQL之常用函数介绍
    一:函数的简介函数可以把我们经常使用的代码封装起来,需要的时候直接调用即可。这样既提高了代码效率,又提高了可维护性。在SQL中我们也可以使用函数对检索出来的数据进行函数操作。使用这些函数,可以极大地提高用户对数据库的管理效率。我们在使用SQL语言的时候,不是直接和这门......
  • mysql执行优化器
    sql这个ql看着给人感觉t表是驱动表,其实优化器优化后trc才是驱动表,因为t的查询条件筛选出来有50多万,二trc筛选只有几千条explainselectdistinctt.`id`as"id",t.deletedas"deleted",t.noas"no",ru.nameas"requester_name",tm.solve_minutesas"ticketMetric......
  • VMware 供外网访问
    配置过程一、首先配置VMware的“虚拟网络设置”。二、“更改设置”三、vm信息设置为“桥接模式”如果没有VMnet0点击左下角还原默认设置 就会出现四、设置vmware安装系统的网络模式五、网络适配器-->网络链接设置为“桥接模式” ......