SQL-每日一题【627. 变更性别】

题目

Salary 表:

请你编写一个 SQL 查询来交换所有的 'f' 和 'm' (即,将所有 'f' 变为 'm' ,反之亦然),仅使用 单个 update 语句 ,且不产生中间临时表。

注意,你必须仅使用一条 update 语句,且 不能 使用 select 语句。

查询结果如下例所示。

示例 1:

解题思路

1.题目要求我们将性别进行变更,也就是交换所有的 'f' 和 'm' 。并且不可以用 select 语句,那我们就利用 update 和 case 函数去实现。

2.我们先利用 case 函数 将性别为 'm' 的变为 'f' ,性别为'f'的变为 'm',然后更新到 salary 表的 sex 属性中即可。

代码实现

sql 复制代码
update salary 
 set sex = ( 
     case sex when 'm' then 'f' else 'm' end);

测试结果

相关推荐
zhangjw346 小时前
1-3 PostgreSQL 架构模型:实例、数据库、Schema 模式、表空间完整概念
数据库·postgresql·架构
小羊没烦恼!6 小时前
C#综合揭秘——Entity Framework 并发处理详解
java·开发语言·前端·javascript·数据库·mysql·c#
Databend6 小时前
周年庆结束了,湖仓为什么还在高消费?
大数据·数据库·agent
笃行3507 小时前
数据集成软件里最贵的一行字,叫“用同步工具做增量同步“
数据库
吴声子夜歌7 小时前
Docker入门与实战——Etcd(高可用的键值数据库)
数据库·docker·etcd
qq_白羊座7 小时前
Hologres / PostgreSQL jsonb 常用函数 & 操作符对照表
数据库·postgresql
千桐科技7 小时前
qData 数据中台专业版功能解析:告别 Excel 与 SQL 拼凑,打通系统合并的可追踪数据链路
数据库·sql·excel·qdata
jiushidt8 小时前
在 DBeaver 中为 SQLite 启用 SpatiaLite
数据库·sqlite
码士集团小青8 小时前
Google 开源了啥,让 AI Agent 碰数据库不再是定时炸弹
数据库·oracle
CS创新实验室9 小时前
数据库突然断电,凭什么没丢数据?——WAL 日志与崩溃恢复
数据库·mysql