You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将添加列与创建索引合并为单条SQL语句?

合并添加列与创建索引的ALTER TABLE语句

当然可以!你完全能把这两个操作合并成单条ALTER TABLE语句,这样不仅能减少一次全表扫描的开销,还能避免两次操作带来的额外锁等待时间——尤其是针对大表来说,这点能帮你节省不少时间。

合并后的语句如下:

alter table main_table 
add `last_updated` datetime DEFAULT CURRENT_TIMESTAMP,
add index (last_updated);

一些额外说明:

  • 这条语句在MySQL 5.6及以上版本(支持Online DDL的情况下)会以更高效的方式执行,只需要一次对表的处理,而非两次独立的ALTER操作。
  • 从你给出的原语句风格来看,应该是针对MySQL的场景;如果是其他数据库(比如PostgreSQL),语法会略有不同,但核心逻辑一致——在单条ALTER语句中批量声明多个操作。
  • 即便支持Online DDL,大表操作仍会占用一定系统资源,建议在业务低峰时段执行,避免影响正常业务。

内容的提问来源于stack exchange,提问作者David542

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:38:48