本文以视频+文字放送,为你带来腾讯云企业级MySQL-Returning语法使用
【需求背景】
在一些数据库场景中,用户会在使用insert语句之后希望返回刚才所插入的数据行。一种实现方式是,将insert语句和select放到一个事务中执行。
腾讯云企业级MySQL(CDB)支持一种更简单的实现方式,就是使用returning语法,在insert语句后面,增加returning关键字,从而直接返回刚才所插入的数据行。
【操作演示】
可在哔哩哔哩【腾讯架构师】频道观看视频演示。下面以图文形式给大家简单展示一下returning语法的使用方法。
首先登录数据库实例,使用一张空表进行演示。先插入一条数据,并且使用returning语法。能看到returning * 返回的是刚才所插入的这行数据的所有列,returning id跟returning s分别返回的是刚才所插入的这行数据的id列跟s列。
Returning语法同样支持对返回列做一些操作。可以看到SQL语句returning,返回的列都是经过一些操作和变换,返回值是符合预期的。
最后介绍replace returning 和 delete returning 的使用方法。
首先是replace returning,我们尝试对id等于2这一行的s列作替换,可以看到使用replace之后,将id等于2这一行所对应的s列进行替换,变成了abcd。对它进行returning之后,就可以正常返回刚才的SQL语句操作的数据行。
最后展示的是delete returning,我们尝试做一个全表删除,使用returning语法。可以看到刚才给空的 t 表插入了两条数据,所以delete from t 这条SQL会删除两条数据,可以看到使用delete from t returning * 之后,给用户刚好也是返回了两条数据,说明它是返回这条 delete 语句所涉及到的数据行。
以上就是returning语法使用的简单介绍,欢迎大家试用腾讯云企业级MySQL。
腾讯数据库技术团队对内支持QQ空间、微信红包、腾讯广告、腾讯音乐、腾讯新闻等公司自研业务,对外在腾讯云上依托于CBS+CFS的底座,支持TencentDB相关产品,如CynosDB、CDB、CTSDB、MongoDB、CES等。腾讯数据库技术团队专注于持续优化数据库内核和架构能力,提升数据库性能和稳定性,为腾讯自研业务和腾讯云客户提供“省心、放心”的数据库服务。此公众号旨在和广大数据库技术爱好者一起推广和分享数据库领域专业知识,希望对大家有所帮助。
↓ ↓ 点击【阅读原文】可查看腾讯云企业级MySQL产品详情页