当前位置: 首页 > wzjs >正文

网站后台上传表格佛山百度seo代理

网站后台上传表格,佛山百度seo代理,电子商务网站案例分析,网络设备维护是做什么的MySQL 索引的核心操作语法,涵盖创建、查看、删除及优化场景,附详细示例:一、创建索引 1. 建表时创建 CREATE TABLE users (id INT PRIMARY KEY AUTO_INCREMENT, -- 主键索引 (自动创建)username VARCHAR(50) UNIQUE, -- 唯…

MySQL 索引的核心操作语法,涵盖创建、查看、删除及优化场景,附详细示例:


一、创建索引

1. 建表时创建
CREATE TABLE users (id INT PRIMARY KEY AUTO_INCREMENT,       -- 主键索引 (自动创建)username VARCHAR(50) UNIQUE,             -- 唯一索引email VARCHAR(100),age INT,city VARCHAR(20),INDEX idx_age (age),                     -- 普通单列索引INDEX idx_city_age (city, age),          -- 联合索引FULLTEXT INDEX ft_idx_email (email)      -- 全文索引 (MyISAM/InnoDB)
) ENGINE=InnoDB;
2. 表已存在时添加
-- 添加普通索引
ALTER TABLE users ADD INDEX idx_email (email);
-- 或
CREATE INDEX idx_email ON users (email);-- 添加唯一索引
ALTER TABLE users ADD UNIQUE INDEX uni_username (username);-- 添加联合索引
ALTER TABLE users ADD INDEX idx_city_age (city, age);-- 添加全文索引 (适用于文本搜索)
ALTER TABLE articles ADD FULLTEXT INDEX ft_title_content (title, content);-- 添加前缀索引 (限制索引长度)
ALTER TABLE logs ADD INDEX idx_url_prefix (url(20));  -- 只索引url前20字符

二、查看索引

-- 查看表的所有索引
SHOW INDEX FROM users;-- 输出结果关键列:
--   Key_name: 索引名称
--   Column_name: 索引的列
--   Non_unique: 0=唯一索引, 1=非唯一索引
--   Index_type: BTREE(默认)/HASH/FULLTEXT

示例输出

TableNon_uniqueKey_nameSeq_in_indexColumn_nameIndex_type
users0PRIMARY1idBTREE
users0uni_username1usernameBTREE
users1idx_city_age1cityBTREE
users1idx_city_age2ageBTREE

三、删除索引

-- 删除普通索引
ALTER TABLE users DROP INDEX idx_email;
-- 或
DROP INDEX idx_email ON users;-- 删除主键索引 (需先移除自增属性)
ALTER TABLE users MODIFY id INT;       -- 取消自增
ALTER TABLE users DROP PRIMARY KEY;

四、索引优化场景语法

1. 强制使用索引
SELECT * FROM users FORCE INDEX (idx_city_age) 
WHERE city = 'Beijing' AND age > 25;
2. 忽略索引
SELECT * FROM users IGNORE INDEX (idx_age) 
WHERE age > 30;  -- 测试无索引时的性能
3. 重建索引 (解决碎片化)
-- InnoDB 表重建
ALTER TABLE users ENGINE=InnoDB;
-- 或优化表
OPTIMIZE TABLE users;

五、常见问题处理

1. 重复索引检测
-- 查询冗余索引 (schema替换为数据库名)
SELECT table_name,index_name,GROUP_CONCAT(column_name) AS columns
FROM information_schema.STATISTICS 
WHERE table_schema = 'your_db'
GROUP BY table_name, index_name
HAVING COUNT(*) > 1;
2. 索引未生效排查
EXPLAIN SELECT * FROM users WHERE age = 30 AND city = 'Shanghai';

检查 EXPLAIN 结果

  • typeref/range → 索引生效
  • typeALL → 全表扫描 (索引失效)
  • key 列为实际使用的索引名称

六、使用规范

场景推荐操作
主键字段INT/BIGINT 自增,避免使用 UUID
频繁查询的 WHERE 条件列创建单列或联合索引
长文本字段用前缀索引 INDEX (column(20)) 或全文索引
JOIN 关联列确保两表关联字段有相同类型的索引
排序/分组字段ORDER BYGROUP BY 的列建索引
低区分度字段 (如性别)不单独建索引,可与其他列建联合索引 (如 INDEX(gender, age))

示例:完整工作流

-- 1. 创建表
CREATE TABLE orders (order_id INT PRIMARY KEY,user_id INT NOT NULL,amount DECIMAL(10,2),status TINYINT,created_at DATETIME
);-- 2. 添加常用索引
ALTER TABLE orders ADD INDEX idx_user_id (user_id),ADD INDEX idx_created_at (created_at),ADD INDEX idx_status_amount (status, amount);-- 3. 查看索引
SHOW INDEX FROM orders;-- 4. 删除冗余索引 (假设不需要按amount单独查)
DROP INDEX idx_status_amount ON orders;-- 5. 重建表优化
OPTIMIZE TABLE orders;

💡 关键提示

  • 主键 PRIMARY KEY 自动创建 聚簇索引(数据按主键物理排序)
  • 修改索引 = 删除旧索引 + 新建索引(ALTER TABLE 是原子操作)
  • 生产环境避免高峰期执行索引变更(锁表风险)
http://www.dtcms.com/wzjs/256766.html

相关文章:

  • 网站首页htmlseo营销方案
  • 医疗手机网站模板深圳网络推广大师
  • 内部建设网站需要什么条件免费二级域名分发
  • 吉林省人民政府发展研究中心seo的作用主要有
  • 长春站最新发布网页设计制作教程
  • 如何查找高权重网站互动营销名词解释
  • 如保做网站赢利吴江网站制作
  • 平顶山做网站优化百度客服电话24小时
  • 广州荔湾做网站网站制作流程和方法
  • python培训骗局北京seo编辑
  • 怎么做企业网站仿站郑州网站制作公司
  • 关于网站建设申请报告网页设计制作网站教程
  • 莱州网站建设多少钱seo标题生成器
  • 网站空间3个g多少钱24小时人工在线客服
  • 优秀高端网站建设报价搜索引擎优化实训报告
  • 国企公司网站制作怎么做小程序
  • 东莞免费做网站公司企业关键词优化推荐
  • 莞城区做网站哈尔滨怎样关键词优化
  • 跨境建站服务公司网站策划运营
  • 做内销的网站推荐广州灰色优化网络公司
  • 做海外网站企业网站排名优化价格
  • 支付宝手机网站支付前端怎么做百度收录网站入口
  • 怎么样建设一个电影网站视频seo查询排名系统
  • 网站系统繁忙是什么意思引流推广营销
  • 为什么选用美食做网站主页首页关键词优化公司
  • 网站开发技术书籍直通车优化推广
  • 做网站时如何给文字做超链接网站的友情链接是什么意思
  • 在常州青之锋做网站客服怎么样付费推广有几种方式
  • 集团做网站苏州百度推广公司
  • 网站开发团队 需要哪些角色赣州网站建设公司