将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
sql实战 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
- 问题描述
- Sql语句
问题描述
将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现。
CREATE TABLE IF NOT EXISTS titles_test (
id int(11) not null primary key,
emp_no int(11) NOT NULL,
title varchar(50) NOT NULL,
from_date date NOT NULL,
to_date date DEFAULT NULL);
来源:牛客网
链接:https://www.nowcoder.com/practice/2bec4d94f525458ca3d0ebf3bc8cd240?tpId=82&&tqId=29812&rp=1&ru=/ta/sql&qru=/ta/sql/question-ranking
Sql语句
参考https://www.nowcoder.com/questionTerminal/2bec4d94f525458ca3d0ebf3bc8cd240?f=discussion
1、运用REPLACE(X,Y,Z)函数。其中X是要处理的字符串,Y是X中将要被替换的字符串,Z是用来替换Y的字符串,最终返回替换后的字符串。以下语句用 UPDATE和REPLACE 配合完成,用REPLACE函数替换后的新值复制给 id=5 的 emp_no。REPLACE的参数为整型时也可通过。
update titles_test
set emp_no = replace(emp_no, 10001, 10005)
where id = 5;
2、全字段更新替换。由于 REPLACE 的新记录中 id=5,与表中的主键 id=5 冲突,故会替换掉表中 id=5 的记录,否则会插入一条新记录(例如新插入的记录 id = 10)。并且要将所有字段的值写出,否则将置为空。
replace into titles_test
values(5, 10005, 'Senior Engineer', '1986-06-26', '9999-01-01');
因为插入的时死数据,进行进一步改进
replace into titles_test
select 5, 10005, title, from_date,to_date
from titles_test
where id = 5;
将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005相关推荐
- SQL44 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
描述 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现,直接使用update会报错. CREATE TABLE tit ...
- 牛客网数据库SQL实战44—— 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
牛客网数据库SQL实战44-- 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005 题目描述 将id=5以及emp_no=10001的行数据替换成id=5以及em ...
- 数据库SQL实战 --43.将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
题目描述 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现. CREATE TABLE IF NOT EXISTS t ...
- SQL-44 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现。...
题目描述 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现. CREATE TABLE IF NOT EXISTS t ...
- 【数据库SQL实战】将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
https://www.nowcoder.com/practice/2bec4d94f525458ca3d0ebf3bc8cd240?tpId=82&tqId=29812&rp=0&a ...
- 数据库SQL实战 --42.将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
题目描述 将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现. CREATE TABLE IF NOT EXISTS t ...
- mysql把相同id的多行合并到一行_mysql中将多行数据合并成一行数据
一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句: 1 SELECT am.acti ...
- java 合并到一行_mysql中将多行数据合并成一行数据
一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句: 1 SELECT am.acti ...
- mysql大量数据合并_mysql中将多行数据合并成一行数据
一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句: 1 SELECT am.acti ...
最新文章
- OpenFOAM安装+ParaView安装+环境配置(deb直接安装详细记录-Ubuntu14.04+OpenFOAM4.1)
- 每个程序员都必须知道的8种通用数据结构
- 新的一年到来了,我要做的第一件事是放弃……
- 第12章[12.7] Ext JS实现带动态数字的图标
- Open3d之交互式可视化
- 人脸方向学习(十二):Face Detection-Tiny-DSOD解读
- 从计算机移到u盘如何加快速度,加快U盘写入速度
- intern() 方法
- 马哥教育42期第五周作业
- 360极速浏览器屏蔽百度广告
- AE插件:能量激光描边光效特效Saber Mac
- 持续集成:通过Jenkins API创建项目和节点
- 典型的单管共射极放大电路
- Python.random.seed()用法
- apple tv设置_如何设置Apple TV以自动安装iPhone的应用程序
- 记工商银行软件开发中心北京研发部面试——人工智能研发岗
- 华为快应用IDE:代码智能提示及自动补全
- python 九九乘法表 长方形_Python-九九乘法表
- 股票量化API接口的实例代码分享
- 计算机二级2017试题及答案,2017计算机二级VF试题及答案