新特性解读 | 8.0 新增 DML 语句(TABLE & VALUES)
3 月,跳不动了?>>> 作者:杨涛涛 资深数据库专家,专研 MySQL 十余年。擅长 MySQL、PostgreSQL、MongoDB 等开源数据库相关的备份恢复、SQL 调优、监控运维、高可用架构设计等。目前任职于爱可生,为各大运营商及银行金融企业提供 MySQL 相关技术支持、MySQL 相关课程培训等工作。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 背景 MySQL 8.0.19 release 发布了两条新的 DML 语句。一条 TABLE 语句,一条 VALUES 语句。这里不要把这两条语句混淆了。 TABLE 不是广义的表,而仅仅是一条语句,应用于需要全表扫描的场景。 还有 VALUES 语句也不要混淆为 INSERT...VALUES...这样的传统插入语句。VALUES 是一个全新的模拟记录集的语句,类似于其他数据库比如 PGSQL 的 ROW 语句。 一、应用场景 TABLE 语句 具体用在小表的全表扫描,比如路由表、配置类表、简单的映射表等。 用来替换是被当做子查询的这类小表的 SELECT 语句。 VALUES 语句 VALUES 类似于其他数据库的 ROW 语句,造数据时非常有用。 二、语法使用 那现在针对这两类 DML 语句,结合实际例子说明下其具体用途。 2.1 TABLE 语句 具体语法: